- Fork the repo and clone it.
- The project now uses
pipenv
to manage dependencies. - Install Pipenv using the following command:
pip install pipenv
- Navigate to the project directory and initialize the environment using the following command -
pipenv shell --python 3.8
- The above step also activates the environment, for activating the environment in subsequent sessions type the following command:
pipenv shell
- At the root of your project directory
pipenv install
pre-commit install
-
This will setup the project requirements and pre-commit test hooks!
-
After the above setup, run
- python manage.py makemigrations
- python manage.py migrate
- Start the backend server
python manage.py runserver
This runs the backend server at default port 8000
.
Open http://localhost:8000 to view it in the browser.
- At your root directory run
yarn install
to install all the dependencies - To start react dev server
yarn start
This runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.
The page will reload if you make edits.
- Create a fork of this repo.
- Clone your fork of your repo on your pc.
- Add Upstream to your clone
- Every change that you do, it has to be on a branch. Commits on master would directly be closed.
- Make sure that before you create a new branch for new changes,syncing with upstream is neccesary.
- Write clear meaningful git commit messages (Do read this).
- Make sure your PR's description contains GitHub's special keyword references that automatically close the related issue when the PR is merged. (Check this for more info)
- If you're making very, very small changes to your PR (such as fixing a failed Travis build, or making some minor style corrections or minor changes requested by reviewers), make sure you squeeze your commits afterwards, so you don't have an absurd number of commits for a very small fix. (Learn how to squash at here)
- If you are submitting a PR for a UI-related topic, it would be really awesome if you could add a screenshot of your change or a link to a deployment where it can be tested along with your PR. This makes it very easy for reviewers and you will also get reviews faster.
- Since the project now uses pipenv to manage dependencies, you must run
pipenv install <package_name>
to install the new package. - Use only
yarn add package_name
to add new packages to the frontend part.
We would like to thank these wonderful people who helped us to build this project. Cheers!
This project follows the specification of all-contributors. Contributions of any kind are welcome!
All feedback and suggestions are welcome!
- π¬ Join the community on Discord