Skip to content

Linguistics training system for the National Olympiad of Linguistics

Notifications You must be signed in to change notification settings

kchendv/TOL-trainer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TOL-Trainer

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.

Summary

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.

Setup

  1. Activate python venv (python > 3.6)

  2. Install dependencies

$ pip install -r requirements.txt
  1. 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'
  1. Read environmental variables
$ source <filename.env>

For development only

  1. Launch flask
$ flask run

For deployment only

The project is deployed using nginx and uwsgi

uwsgi.ini

$ uwsgi --ini uwsgi.ini

Restart nginx

$ sudo systemctl restart nginx

Author: Kevin Chen (@kchendv)

About

Linguistics training system for the National Olympiad of Linguistics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published