Wiki › Project
Pre3
Article
ReadAll pages
From Chaipat's knowledge graph
Pre3 is a course-management system built as a team project at Chiang Mai University. It helps students plan their courses and track their progress, and helps lecturers and administrators manage courses, students and staff.
Roles
Every user has a role, and each role grants a set of permissions:
| Role | What they can do |
|---|---|
| Guest | Browse without logging in |
| Student | Manage their courses, track progress, and plan ahead with a visual tree of course prerequisites |
| Lecturer | Manage their courses and follow their students' progress |
| Admin | Manage the whole system |
Technology
- Back end: Flask with Jinja2 templates, SQLAlchemy and PostgreSQL, served by Gunicorn, with Flask-Login and Flask-WTF.
- Front end: Bootstrap 5 and the SB Admin 2 dashboard template, with JavaScript for the prerequisite tree and other interactive pages.
- Course data: read from Google Sheets through its API and converted with SheetJS. Sign-in uses Google single sign-on.
- Running it: Docker, driven by a Makefile.
The course tree echoes his earlier Prerequisite tree tool.


