How bigelazo/u-roadmaps works
This is a Next.js academic roadmap application: students and teaching staff access course roadmaps, while institutional login, academic overviews, and notifications support that workflow. The main roadmap surface has API routes delegating to roadmap server operations; the tree also shows editing, completion, resources, dependencies, and simulation capabilities. Other branches cover institutional authentication, academic-overview retrieval, and notifications. Source excerpts and the index establish some server-side relationships; UI wiring and several roadmap internals were not sampled, so those links are omitted or marked unverified.
Main entry points: roadmap Roadmap API · roadmap/server.ts Roadmap operations · notifications/server.ts Notification service · session.tsx Roadmap session
Components 21
Course roadmaps
- Course page
src/app/courses/[courseCode]/[year]/[semester]/page.tsx - Roadmap session
src/features/roadmap/session/session.tsx - Roadmap API
src/app/api/[courseCode]/[year]/[semester]/roadmap - Request adapters
src/app/_adapters/roadmap.ts - Roadmap operations
src/features/roadmap/server.ts - Roadmap editing
src/features/roadmap/application/editor.ts - Completion tracking
src/features/roadmap/application/completion.ts - Learning resources
src/features/roadmap/application/resources - Roadmap graph
src/features/roadmap/graph/RoadmapGraph.tsx
Institutional access
- Login callback
src/app/api/plogin/route.ts - Login handling
src/features/institutional-access/server.ts - VTI integration
src/integrations/vti/server.ts
Academic overview
- Overview API
src/app/api/academic-overview/route.ts - Overview service
src/features/academic-overview/server.ts - Overview retrieval
src/features/academic-overview/application/get-academic-overview.ts - UCampus integration
src/integrations/ucampus/server.ts
Notifications
- Notification service
src/features/notifications/server.ts - Novu transport
src/features/notifications/infrastructure/novu-transport.ts
Shared services
- PostgreSQL data
src/shared/server/db/index.ts - HTTP handling
src/app/_adapters/http.ts
Other components
- Student or teacher
Connections 18
- Student or teacher → Course page: opens course
- Course page → Roadmap session: shows roadmap
- Roadmap session → Roadmap API: persists changes
- Roadmap API → Request adapters: validates identity
src/app/api/[courseCode]/[year]/[semester]/roadmap/route.ts - Roadmap API → Roadmap operations: dispatches operations
src/app/api/[courseCode]/[year]/[semester]/roadmap/route.ts - Roadmap API → HTTP handling: handles results
src/app/api/[courseCode]/[year]/[semester]/roadmap/route.ts - Roadmap operations → Roadmap editing: exports editing
src/features/roadmap/server.ts - Roadmap operations → Completion tracking: exports completion
src/features/roadmap/server.ts - Roadmap operations → Learning resources: exports resources
src/features/roadmap/server.ts - Roadmap graph → Roadmap session: renders session
- Login callback → Login handling: completes login
src/app/api/plogin/route.ts - Login handling → VTI integration: authenticates callback
- Overview API → Overview service: requests overview
src/app/api/academic-overview/route.ts - Overview service → Overview retrieval: delegates retrieval
src/features/academic-overview/server.ts - Overview retrieval → UCampus integration: queries academic data
src/features/academic-overview/application/get-academic-overview.ts - Notification service → PostgreSQL data: reads recipient data
src/features/notifications/server.ts - Notification service → Novu transport: emits notices
src/features/notifications/server.ts - Roadmap API → Notification service: signals mutations
src/app/api/[courseCode]/[year]/[semester]/roadmap/nodes/route.ts