How rajavarshan006/placement-interview-performance-tracker works
This repository is a placement interview performance tracker with role-based access, placement-drive applications and results, and mentor-led student support. The principal workflow is that students apply to drives and view results, while mentors review mentees’ rounds and manage interventions and notes; coordinators manage access and drive data. The tree and excerpts show both a legacy app.py API and a separate FastAPI backend, plus two frontend entry points. Wiring for unsampled routers and several legacy screens is uncertain, so only documented or excerpt-supported connections are shown.
Main entry points: database.py ORM database · App.jsx Role-based UI · main.py FastAPI entry point · failure_analysis.py Failure analysis
Components 20
User interfaces
- Mentor and access UI
frontend/src/App.tsx - Mentor dashboard
frontend/src/pages/MentorDashboard.tsx - Mentor API client
frontend/src/services/mentorService.ts - Role-based UI
public/src/App.jsx - Login screen
public/src/components/LoginForm.jsx - Role dashboards
public/src/components/Dashboard.jsx
API layers
- Placement API
app.py - FastAPI entry point
backend/app/main.py - Domain routers
backend/app/routers - Failure analysis
backend/app/routers/failure_analysis.py
Mentor support
- Intervention API
backend/app/routers/intervention.py - Mentor API
backend/app/routers/mentor.py - Pattern analyzer
backend/app/services/pattern_analyzer.py - AI agent
backend/app/services/groq_agent.py - Email service
backend/app/services/email_service.py
Data and services
- Legacy data access
db.py - ORM database
backend/app/database.py - Domain models
backend/app/models
Other components
- Student, mentor, coordinator
- SMTP server
Connections 17
- Student, mentor, coordinator → Mentor and access UI: uses
- Mentor and access UI → Mentor dashboard: routes to
- Mentor dashboard → Mentor API client: requests data
- Mentor API client → Mentor API: calls API
- Student, mentor, coordinator → Role-based UI: uses
- Role-based UI → Login screen: shows when signed out
- Role-based UI → Role dashboards: shows when signed in
- Role dashboards → Placement API: placement operations
- Placement API → Legacy data access: reads and writes
- FastAPI entry point → Domain routers: registers
- FastAPI entry point → ORM database: creates tables
- Mentor API → ORM database: data access
- Intervention API → ORM database: data access
- Failure analysis → Pattern analyzer: analysis
- Failure analysis → AI agent: AI assistance
- Email service → SMTP server: sends mail
- Domain models → ORM database: uses base