How abarna-s-2006/prepnest works
PrepNest is a placement-preparation platform: students register or log in, practice across aptitude, coding, discussion, interview, and resume modules, then review readiness and progress. The React app uses a REST API backed by Express controllers and JSON-file persistence. Coding submissions additionally execute through a local code runner; resume analysis extracts PDF text before ATS scoring. Recommendation, weak-area, and achievement utilities support personalized feedback across modules. The README documents several capabilities whose controller implementations were not sampled; those branches are included at the documented subsystem level.
Main entry points: App.jsx App Router · server.js Express API · api.js API Client · jsonDb.js JSON File Store
Components 27
Student App
- App Router
client/src/App.jsx - Auth Context
client/src/context/AuthContext.jsx - API Client
client/src/services/api.js - Dashboard
client/src/pages/Dashboard.jsx - Aptitude Practice
client/src/pages/Aptitude.jsx - Coding Studio
client/src/pages/Coding.jsx - Discussion Playbook
client/src/pages/GroupDiscussion.jsx - Interview Studio
client/src/pages/HRInterview.jsx - Resume Analyzer
client/src/pages/ResumeATS.jsx - Progress Analytics
client/src/pages/Progress.jsx
API and Identity
- Express API
server/server.js - Authentication
server/controllers/authController.js - JWT Guard
server/middleware/authMiddleware.js
Practice Modules
- Aptitude Service
server/controllers/aptitudeController.js - Coding Service
server/controllers/codingController.js - Discussion Service
server/controllers/gdController.js - Interview Service
server/controllers/hrController.js - Resume Service
server/controllers/resumeController.js
Insights
- Dashboard Service
server/controllers/dashboardController.js - Progress Service
server/controllers/progressController.js - Weak Area Detector
server/utils/weakAreaDetector.js - Study Recommendations
server/utils/recommendationEngine.js - Achievement Engine
server/utils/achievementEngine.js
Persistence and Execution
- JSON File Store
server/utils/jsonDb.js - Code Runner
server/utils/codeRunner.js - ATS Checker
server/utils/atsChecker.js
Other components
- Student
Connections 47
- Student → App Router: uses
- App Router → Auth Context: provides auth
- App Router → Dashboard: routes to
- App Router → Aptitude Practice: routes to
- App Router → Coding Studio: routes to
- App Router → Discussion Playbook: routes to
- App Router → Interview Studio: routes to
- App Router → Resume Analyzer: routes to
- App Router → Progress Analytics: routes to
- Auth Context → API Client: requests
- Dashboard → API Client: requests
- Aptitude Practice → API Client: requests
- Coding Studio → API Client: requests
- Discussion Playbook → API Client: requests
- Interview Studio → API Client: requests
- Resume Analyzer → API Client: requests
- Progress Analytics → API Client: requests
- API Client → Express API: sends REST
- Express API → Authentication: dispatches auth
- Express API → Aptitude Service: dispatches aptitude
- Express API → Coding Service: dispatches coding
- Express API → Discussion Service: dispatches discussion
- Express API → Interview Service: dispatches interview
- Express API → Resume Service: dispatches resume
- Express API → Dashboard Service: dispatches dashboard
- Express API → Progress Service: dispatches progress
- Aptitude Service → JWT Guard: protected by
- Coding Service → JWT Guard: protected by
- Resume Service → JWT Guard: protected by
- Authentication → JSON File Store: reads and writes
- Aptitude Service → JSON File Store: reads and writes
- Coding Service → JSON File Store: reads and writes
- Discussion Service → JSON File Store: tracks activity
- Interview Service → JSON File Store: tracks answers
- Resume Service → JSON File Store: stores analysis
- Dashboard Service → JSON File Store: reads activity
- Progress Service → JSON File Store: reads activity
- Coding Service → Code Runner: executes code
- Resume Service → ATS Checker: scores extracted text
- Dashboard Service → Weak Area Detector: analyzes activity
- Dashboard Service → Study Recommendations: builds study plan
- Study Recommendations → Weak Area Detector: uses analysis
- Aptitude Service → Achievement Engine: evaluates badges
- Coding Service → Achievement Engine: evaluates badges
- Resume Service → Achievement Engine: evaluates badges
- Achievement Engine → Weak Area Detector: checks readiness
- Achievement Engine → JSON File Store: reads and writes