ContriHUB is an event where we are expecting to get more and more people involved in Open Source activities.
- Install Python
- Clone this repository
git clone https://github.com/ContriHUB/ContriHUB-22.git
- Create Virtual Environment
python -m venv <env_name>
- Activate the environment
- On Windows, run:
<env_name>\Scripts\activate
- On Linux/Mac, run:
source <env_name>/bin/activate
- On Windows, run:
- Install the dependencies
pip install -r requirements.txt
- Change directory to ContriHUB-22
cd ContriHUB-22
- Create a .env file
- In Windows, Right Click, Open Git Bash here, and run:
touch .env
- In Linux/Mac, run:
touch .env
- In Windows, Right Click, Open Git Bash here, and run:
- Fill the contents of .env by following the format given in sample_env_file.txt
- You can use this to generate SECRET_KEY, otherwise just remove that from .env file and it should work fine.
- You will need to create a Github OAuth App in order to fill SOCIAL_AUTH_GITHUB_KEY and SOCIAL_AUTH_GITHUB_SECRET fields.
- Put both Homepage URL and Authorization callback URL as
http://127.0.0.1:8000/
. - If you want to work on Email Sending Issue, you also need to fill you Email (GMail) in EMAIL_HOST_USER and your Email password in EMAIL_HOST_PASSWORD. (Now you know why you should never push .env file to remote).
- You will also need to Allow Access to Less Secure Apps in your GMail Account.
- You can also create a new G-Mail account to avoid using your personal account.
- To apply the migrations run,
python manage.py migrate
- Now to run the server, and visit
http://127.0.0.1:8000/
.python manage.py runserver
- To access admin panel, you need to be superuser. Follow this link for instructions.
-
SMTP protocol will not work with proxy. Kindly use mobile data while requesting an assignment/ submitting PR link/ testing out email functionality.
-
Every python project will be following some linting rules - Flake8 in this case. Kindly run Flake8 tests before submitting your code. To install Flake8, run this command:
python<version> -m pip install flake8
To run Flake8 tests on a file, run this command:
flake8 path/to/your_code/main.py #check particular file
or for an entire repository, run this command:
flake8 path/to/your_project/ #check the entire project repo