Tuition Platform

Platform to connect student and tutors. An opensource project developed for the purpose of learning. It is built on top of Django, Djangorestframework and Vue.js. There might me few things missing from the project, you can make them according to your needs. Just fork and create a pull request if you found a bug fixed something, so that others can benefit from this.


Let's setup the project now


sudo apt-get install memcached

* Above link are provided for installing the dependencies, if they dont work for you, you can google and find a solution for you. Make sure to put the problem and solution below in the comments.


Step 1 - Create and activate your virtual environment

virtualenv -p python3 venv
source venv/bin/activate

Step 2 - Install requirements.txt

pip install -r requirements.txt

Step 3 - Set your environment variables

Create a file .env where is located similar to .env-sample and set your environment variables (mandatory).

Step 4 - Create required Directories

mkdir -p static/{css,js,img} static_cdn/{static_root,media_root} templates/{snippets,layouts} apps logs locale

Step 5 - Run Migrations & Migrate and Create superuser

python makemigrations
python migrate

# Create superuser
python createsuperuser

Step 6 - Run management command to fill zipcode database

python fill_zipcode apps/users/states_pincode/indian_states_zipcode.xls

* This will take long, better to open a new terminal and proceed.

Step 7 - Run Django server

python runserver 0:8005

Step 8 - Setup Frontend (Vue.js)

# Open a new terminal first

cd frontend/searchyourguru

# Create .env file here to
touch .env

# Set the api endpoint where you will run your django server
# Make sure this is correct, otherwise your api wont work

Step 9 - Install npm packages

npm install

Step 10 - Run vue server

npm run serve

# It will run server on default port 8080

That's all