How cxrphly/uniagenda-rev2 works
UniAgenda is a university agenda for organizing courses, class schedules, tasks, events, and notes. The user enters through the routed React app, signs in when Supabase is configured (or uses demo/offline mode), and manages academic records through the pages backed by a shared data context. That context writes locally and queues changes for synchronization; it also performs a full sync after login. Settings, dashboard, map display, reminders, and PWA installation are additional product branches. The README is empty and several page and sync implementations were not sampled, so uncertain internal calls are omitted.
Main entry points: App.tsx App routing · DataContext.tsx Academic data · AuthContext.tsx Authentication · Tarefas.tsx Tasks
Components 21
App and access
- App routing
client/src/App.tsx - Authentication
client/src/contexts/AuthContext.tsx - Login page
client/src/pages/Login.tsx
Academic planning
- Dashboard
client/src/pages/Dashboard.tsx - Courses
client/src/pages/Disciplinas.tsx - Class schedule
client/src/pages/Horarios.tsx - Tasks
client/src/pages/Tarefas.tsx - Events
client/src/pages/Eventos.tsx - Notes
client/src/pages/Anotacoes.tsx - Settings
client/src/pages/Configuracoes.tsx - Map view
client/src/components/Map.tsx
Data and sync
- Academic data
client/src/contexts/DataContext.tsx - Local database
client/src/lib/db.ts - Sync engine
client/src/lib/sync.ts - Supabase client
client/src/lib/supabase.ts
App experience
- Task reminders
client/src/lib/notifications.ts - Install banner
client/src/components/PWAInstallBanner.tsx - PWA support
client/src/hooks/usePWA.ts - Service worker
client/public/sw.js
Other components
- Student
- Supabase service
Connections 28
- Student → App routing: opens
- App routing → Authentication: provides auth
- App routing → Login page: shows when signed out
- Authentication → Supabase client: uses
- Supabase client → Supabase service: connects
- App routing → Dashboard: routes
- App routing → Courses: routes
- App routing → Class schedule: routes
- App routing → Tasks: routes
- App routing → Events: routes
- App routing → Notes: routes
- App routing → Settings: routes
- App routing → Map view: renders
- App routing → Academic data: provides data
- Academic data → Authentication: reads user
- Academic data → Local database: reads and writes
- Academic data → Sync engine: queues changes
- Academic data → Sync engine: starts full sync
- Academic data → Dashboard: provides data
- Academic data → Courses: provides data
- Academic data → Class schedule: provides data
- Academic data → Tasks: provides data
- Academic data → Events: provides data
- Academic data → Notes: provides data
- Tasks → Task reminders: schedules reminders
- App routing → Install banner: renders
- Install banner → PWA support: uses
- PWA support → Service worker: registers