feat: add timeline API with schedule-aware enrollment aggregation

Implements POST /api/timeline endpoint that aggregates enrollment by
subject over 15-minute slots, filtering courses by their actual meeting
times. Includes ISR-style schedule cache with hourly background refresh
using stale-while-revalidate pattern, database indexes for efficient
queries, and frontend refactor to dynamically discover subjects from API.
This commit is contained in:
2026-01-30 10:56:11 -06:00
parent 67ba63339a
commit 669dec0235
17 changed files with 940 additions and 165 deletions
+2
View File
@@ -11,7 +11,9 @@ pub mod calendar;
pub mod encoding;
pub mod extractors;
pub mod routes;
pub mod schedule_cache;
pub mod session_cache;
pub mod timeline;
pub mod ws;
pub use routes::*;