How aashu-kushwaha/university-dekho works
University Dekho is a university-program discovery and application portal. Students browse and filter programs, view program and university details, get recommendations or AI planning support, register or sign in, and submit and track applications; administrators review applications and manage contact messages. The graph connects sampled frontend routing and API use to backend routes, controllers, models, and email service. Several capability paths are represented by exact directories because their source was not excerpted; their internal links are therefore omitted where evidence is insufficient.
Main entry points: App.jsx Web app routing · axios.js API client · auth.controller.js Account workflows · auth.middleware.js Session validation
Components 34
Student portal
- Web app routing
frontend/src/App.jsx - Auth state
frontend/src/context/AuthContext.jsx - API client
frontend/src/api/axios.js - Program discovery
frontend/src/pages/Programs.jsx - Home discovery
frontend/src/pages/Home.jsx - Program details
frontend/src/pages/ProgramDetail.jsx - University details
frontend/src/pages/UniversityDetail.jsx - Recommendations view
frontend/src/pages/Recommendations.jsx - AI planner
frontend/src/pages/AIPlanner.jsx - Registration view
frontend/src/pages/Register.jsx - My applications
frontend/src/pages/Applications.jsx - Application admin
frontend/src/pages/AdminApplications.jsx - Message admin
frontend/src/pages/AdminMessages.jsx
Identity and access
- Auth routes
backend/src/routes/auth.route.js - Account workflows
backend/src/controllers/auth.controller.js - Session validation
backend/src/middleware/auth.middleware.js - User records
backend/src/models/user.model.js - OTP records
backend/src/models/otp.model.js - Token blacklist
backend/src/models/blacklist.model.js
University catalog
- Catalog routes
backend/src/routes/program.route.js - Program discovery logic
backend/src/controllers/program.controller.js - Program records
backend/src/models/program.model.js - University routes
backend/src/routes/university.route.js - University operations
backend/src/controllers/university.controller.js - University records
backend/src/models/university.model.js - Recommendation routes
backend/src/routes/recommendation.route.js - Recommendation logic
backend/src/controllers/recommendation.controller.js
Admissions and engagement
- Application routes
backend/src/routes/application.route.js - Application workflows
backend/src/controllers/application.controller.js - Application records
backend/src/models/application.model.js - Contact routes
backend/src/routes/contact.route.js - Contact workflows
backend/src/controllers/contact.controller.js
Other components
- Student
- Administrator
Connections 43
- Student → Web app routing: uses
frontend/src/App.jsx - Administrator → Web app routing: uses
frontend/src/App.jsx - Web app routing → Program discovery: routes to
frontend/src/App.jsx - Web app routing → Home discovery: routes to
frontend/src/App.jsx - Web app routing → Program details: routes to
frontend/src/App.jsx - Web app routing → University details: routes to
frontend/src/App.jsx - Web app routing → Recommendations view: routes to
frontend/src/App.jsx - Web app routing → AI planner: routes to
frontend/src/App.jsx - Web app routing → Registration view: routes to
frontend/src/App.jsx - Web app routing → My applications: routes to
frontend/src/App.jsx - Web app routing → Application admin: routes to
frontend/src/App.jsx - Web app routing → Message admin: routes to
frontend/src/App.jsx - Auth state → API client: calls
frontend/src/context/AuthContext.jsx - Program discovery → API client: calls
frontend/src/pages/Programs.jsx - Home discovery → API client: calls
frontend/src/pages/Home.jsx - Program details → API client: calls
frontend/src/pages/ProgramDetail.jsx - Recommendations view → API client: calls
frontend/src/pages/Recommendations.jsx - Registration view → API client: calls
frontend/src/pages/Register.jsx - My applications → API client: calls
frontend/src/pages/Applications.jsx - Application admin → API client: calls
frontend/src/pages/AdminApplications.jsx - API client → Auth routes: requests
- API client → Catalog routes: requests
- API client → Recommendation routes: requests
- API client → Application routes: requests
- API client → Contact routes: requests
- Auth routes → Account workflows: dispatches
backend/src/routes/auth.route.js - Auth routes → Session validation: protects
backend/src/routes/auth.route.js - Account workflows → User records: reads and writes
backend/src/controllers/auth.controller.js - Account workflows → OTP records: reads and writes
backend/src/controllers/auth.controller.js - Account workflows → Token blacklist: records tokens
backend/src/controllers/auth.controller.js - Session validation → Token blacklist: checks
backend/src/middleware/auth.middleware.js - Session validation → User records: loads user
backend/src/middleware/auth.middleware.js - Catalog routes → Program discovery logic: dispatches
backend/src/routes/program.route.js - Program discovery logic → Program records: queries
backend/src/controllers/program.controller.js - Recommendation routes → Recommendation logic: dispatches
- Recommendation logic → Program records: queries
backend/src/controllers/recommendation.controller.js - University routes → University operations: dispatches
- University operations → University records: uses
- Application routes → Application workflows: dispatches
backend/src/routes/application.route.js - Application routes → Session validation: protects
backend/src/routes/application.route.js - Application workflows → Application records: reads and writes
backend/src/controllers/application.controller.js - Application workflows → Program records: looks up
backend/src/controllers/application.controller.js - Contact routes → Contact workflows: dispatches
backend/src/routes/contact.route.js