How saxenasunny/campus-portal works
Campus Portal is a multi-tenant university ERP and learning portal, with role-specific dashboards and routes for students, faculty, administrators, employers, and other campus roles. The main user journey is tenant-scoped sign-in, role resolution, dashboard selection, and navigation into academic, student-service, accreditation, and campus-operations areas. The sampled source confirms routing, authentication, tenant lookup, and some dashboard capabilities; most page implementations were not sampled, so their internal data flow and integrations are not inferred. The README describes only a Vite template, not additional product capabilities.
Main entry points: App.tsx Tenant routes · DashboardRouter.tsx Role dashboard · AuthContext.tsx Authentication · supabase.ts Supabase client
Components 20
Application shell
- React entry
src/main.tsx - Tenant routes
src/App.tsx - Role dashboard
src/pages/DashboardRouter.tsx - Application shell
src/components/layout/AppShell.tsx - Role navigation
src/components/layout/Sidebar.tsx
Identity and tenancy
- Authentication
src/contexts/AuthContext.tsx - Tenant context
src/contexts/TenantContext.tsx - Tenant sign-in
src/pages/auth/TenantLoginPage.tsx - Supabase client
src/lib/supabase.ts
Academic operations
- Faculty teaching
src/pages/faculty - Department oversight
src/pages/hod - Academic registry
src/pages/registrar
Student services
- Student portal
src/pages/student
Accreditation
- Outcome and accreditation
src/pages/accreditation
Campus operations
- Administration
src/pages/admin - Placement and employers
src/pages/placement - Campus ERP services
src/pages/erp - Profile and settings
src/pages/common
Other components
- Campus user
- Supabase
Connections 23
- Campus user → React entry: opens portal
- React entry → Tenant routes: renders
- Tenant routes → Authentication: provides auth
- Tenant routes → Tenant context: provides tenant
- Tenant routes → Tenant sign-in: routes sign-in
- Tenant sign-in → Authentication: requests sign-in
- Authentication → Supabase client: uses
- Tenant context → Supabase client: queries tenant
- Supabase client → Supabase: auth and data requests
- Tenant routes → Role dashboard: routes dashboard
- Role dashboard → Authentication: reads role
- Role dashboard → Student portal: dispatches student
- Role dashboard → Faculty teaching: dispatches faculty
- Role dashboard → Department oversight: dispatches HOD
- Role dashboard → Academic registry: dispatches registrar
- Role dashboard → Administration: dispatches admin
- Role dashboard → Placement and employers: dispatches placement
- Tenant routes → Application shell: wraps protected routes
- Application shell → Role navigation: renders navigation
- Role navigation → Authentication: reads user role
- Tenant routes → Outcome and accreditation: routes accreditation
- Tenant routes → Campus ERP services: routes ERP
- Tenant routes → Profile and settings: routes profile