Skip to content
a tutoring platform implemented by Django
Python HTML Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


license Build Status Read the Doc Chat on Gitter

Hola the Monkey

You just found Tutoria.

Tutoria is a university-based professional online platform for regular and private campus tutoring that seamlessly supports easy management of booking and sharing feedback. Latest technologies are incorporated for granting state-of-the-art user experience.

Tutoria is proudly powered by Django®.


  • [Fixed] Balance checking with commissions.

  • [Fixed] Newly created Tutors with no reviews have a default rating of 0 instead of 5, and the rating is hidden until at least 3 reviews are submitted


  • Fuzzy Search and Asychronized Auto-Completion

  • Anonymous Review

  • Dedicated Admin/Staff Site for Easy Management.

  • Begin/End Session Automation


Before installation, you should have a working django copy. To obtain one, you may visit Django's website.

First, clone this repo using git:

git clone

Then migrate the models. We provide a Makefile for automating this process. To make a clean build, issue

cd tutoria && make rebuild_empty

Or you can populate some demo data:

cd tutoria && make rebuild

Afterwards, you can runserver and launch the application via localhost:

python runserver

Note that begin_all_sessions & end_all_sessions are implemented in the You need to begin/end all sessions using scheduler_trigger via Django shell:

python shell
from scheduler_trigger import *
help() # see usage description

In the django shell, you can start all session at a specific time making use of scheduler_trigger:

run(True, "Nov 25 2017, 9:00p.m.") # start all sessions

or end all session:

run(False, "Nov 25 2017, 9:00p.m.") # end all sessions

For your convenience, you can let the scheduler do begin/end all sessions in turn within a time range:

run_range("Nov 25 2017, 8:00a.m.", "Nov 26 2017, 9:00p.m.") # start & end all sessions in turn


Jinyu Cai*, Boxuan Li*, Jiayao Zhang* and Jingran Zhou*

*The contributors are with the Department of Computer Science, The University of Hong Kong, equally contributed.

Hola Inc. is hiring! Send your CV to

Future Release

Tentatively, we identify the limitations in the current release and plan to have them ready for future releases.

  • MyTutors can view the transaction histories of the commisssions it collected in future releases.

  • Chatting functionality is to be supported.


The contributors to this project wish to thank Mr. George Mitcheson for his generous help and advice throughout this project.

Cite this Project

    title = {Tutoria},
    year = {2017},
    author = {Cai, Jinyu* and Li, Boxuan* and Zhang, Jiayao* and Zhou, Jingran*},
    publisher = {GitHub},
    journal = {GitHub Repository},
    howpublished= {\url{}}


This project has been submitted for partial fulfillment for the course Software Engineering offered by University of Hong Kong, 2017-18.

You can’t perform that action at this time.