Note: This project is originally hosted here. It points to my old GitHub account which is now out of use. The setup instructions is adapted from the work of @puerdon.
TOL-Trainer is a Flask application for creating, storing and hosting competitive linguistics questions. Users can log in, view and solve the assigned questions. Administrators can view and grade each response, as well as add and modify questions. User and question information is stored via SQLite.
-
Activate python venv (python > 3.6)
-
Install dependencies
$ pip install -r requirements.txt
- Set up environmental variables(Can be saved as .env file)
SECRET_KEY=''
SQLALCHEMY_DBURI='sqlite:///site.db'
FLASK_APP='run.py'
EMAIL_USER='(Email to send from)'
EMAIL_PASS='(Email password'
- Read environmental variables
$ source <filename.env>
- Launch flask
$ flask run
The project is deployed using nginx and uwsgi
$ uwsgi --ini uwsgi.ini
$ sudo systemctl restart nginx
Author: Kevin Chen (@kchendv)