ORESS
Smart schedule planner & AI academic assistant
Registration at NDU meant hand-building the same timetable spreadsheet every semester just to compare options.
- Context
- Web App
- Stack
- Django · DRF · PostgreSQL · Redis · Docker · Coolify · Playwright
(opens in a new tab)
(opens in a new tab)The problem
Registration at NDU means reconciling a course catalogue, your own constraints and everyone else's advice by hand, every semester. Students were rebuilding the same timetable spreadsheet each term and trading screenshots to compare options.
What I built
A scraper keeps the course catalog up to date, and instead of checking one schedule at a time, the planner builds and compares full timetables automatically, all running on a self-hosted setup that survived a near-total data loss and came back stronger after a security cleanup.
(opens in a new tab)
(opens in a new tab)How it fits together
- Self-hosted · Docker + Coolify
- Catalogue scraperkeeps NDU's course data current
- PostgreSQLcourses, sections, your constraints
- Timetable enginebuilds every valid combination, not one at a time
- Ranked schedulescompared side by side