Renters vent about their conditions and sign up to the Renters Manifesto
Vent Your Rent has two components, a backend and a frontend. The backend Django application providing an adminstration interface and a GraphQL endpoint. The frontend is a React application which can be found in the frontend/
directory of this repository.
Install and run the frontend in one terminal:
cd frontend && yarn && yarn graphql:generate-types && yarn start
In another terminal, back at the root (cd ../
), set up and run the django server.
yarn containercmd django python manage.py createsuperuser
yarn dev
For detailed information see https://cookiecutter-django.readthedocs.io/en/latest/developing-locally-docker.html
Django management commands can be run using docker-compose run
:
$ docker-compose -f local.yml run --rm django python manage.py
$ docker-compose -f local.yml run --rm django python manage.py migrate
To create a normal user account, just go to Sign Up and fill out the form. Once you submit it, you'll see a "Verify Your E-mail Address" page. Go to your console to see a simulated email verification message. Copy the link into your browser. Now the user's email should be verified and ready to go.
To create an superuser account, use this command:
$ docker-compose -f local.yml run --rm django python manage.py createsuperuser
For convenience, you can keep your normal user logged in on Chrome and your superuser logged in on Firefox (or similar), so that you can see how the site behaves for both kinds of users.
Running type checks with mypy:
$ docker-compose -f local.yml run --rm django mypy vent_your_rent
To run the tests, check your test caoverage, and generate an HTML coverage report:
$ docker-compose -f local.yml run --rm django coverage run -m pytest
$ docker-compose -f local.yml run --rm django coverage html
$ open htmlcov/index.html
$ docker-compose -f local.yml run --rm django pytest
Moved to Live reloading and SASS compilation.
This application is hosted on Heroku.
See detailed cookiecutter-django Heroku documentation.
Moved to settings.