How haoyueliew/aptime-apu-timetable-checker works
APTime is a Flask-backed timetable comparison web app. Students enter multiple intake codes, optionally choose groups and a week, then request common free slots; the backend fetches APSpace data, filters and combines class intervals, and returns results for a timetable and free-time summary. The README also documents elective discovery and exclusion. Backend behavior is supported by app.py excerpts; UI behavior and some endpoint interactions are documented in the README, since the template source was not sampled.
Main entry points: index.html Search and dashboard · app.py Slot request · style.css Timetable styling
Components 12
Student interface
- Search and dashboard
templates/index.html - Timetable styling
static/style.css
Timetable workflows
- Flask routes
app.py - Week options
app.py - Elective discovery
app.py - Slot request
app.py - Timetable fetch
app.py - Intake filters
app.py - Interval calculation
app.py - Slot results
app.py
External data
- APSpace timetable API
Other components
- Student
Connections 15
- Student → Search and dashboard: uses
README.md - Search and dashboard → Flask routes: submits requests
README.md - Search and dashboard → Timetable styling: uses styles
- Flask routes → Week options: collects weeks
app.py - Flask routes → Elective discovery: routes request
README.md - Flask routes → Slot request: routes request
app.py - Elective discovery → Timetable fetch: fetches data
app.py - Slot request → Timetable fetch: fetches data
app.py - Timetable fetch → APSpace timetable API: requests timetable
app.py - Slot request → Intake filters: filters intervals
app.py - Intake filters → Interval calculation: supplies busy times
app.py - Slot request → Slot results: returns results
app.py - Slot results → Search and dashboard: renders grid and summary
README.md - Search and dashboard → Elective discovery: requests electives
README.md - Search and dashboard → Slot request: recomputes slots
README.md