- 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.
We follow a systematic Git Workflow -
- 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)
- When you make very very minor changes to a PR of yours (like for example fixing a failing Travis build or some small style corrections or minor changes requested by reviewers) make sure you squash your commits afterward so that you don't have an absurd number of commits for a very small fix. (Learn how to squash at here)
- When you're submitting a PR for a UI-related issue, it would be really awesome if you add a screenshot of your change or a link to a deployment where it can be tested out along with your PR. It makes it very easy for the reviewers and you'll also get reviews quicker.
- As the project now uses pipenv to manage dependencies, you need to run
pipenv install <package_name>
to install the new package. - Use only
yarn add package_name
to add new packages to the frontend part.
Thanks goes to these wonderful people for helping us set up this project. Cheers!
Aniket Biswas 💻 🎨 |
Jay Parmani 💻 🎨 🚧 |
Animesh Gupta 📖 💻 |
Kush Daga 💻 🎨 |
Shubhank Saxena 💻 🎨 🚧 |
This project follows the all-contributorsspecification. Contributions of any kind welcome!
All feedback and suggestions are welcome!
- 💬 Join the community on Discord