How thareesh2311/ai-skill-gap-analyzer works
This is a career-readiness platform whose main journey is account access, resume upload and parsing, skill extraction and job-requirement comparison, followed by assessments, readiness analytics, and personalized learning with progress tracking. The graph emphasizes the documented React-to-Express workflow and sampled controller behavior; several service implementations are unsampled, so uncertain internal calls are omitted. The Python/Ollama service is shown as a separate optional capability: the README says the deployed flow centers on Node/Express and does not establish that it is wired into that flow.
Main entry points: App.jsx React application · server.js Express API · api.js API services · db.js MongoDB
Components 27
Web application
- React application
client/src/App.jsx - Authentication UI
client/src/context/AuthContext.jsx - Resume workflow
client/src/pages/Resume.jsx - Assessment pages
client/src/pages/Assessments.jsx - Analytics page
client/src/pages/Analytics.jsx - Learning page
client/src/pages/Learning.jsx - API services
client/src/services/api.js
API and career analysis
- Express API
server/server.js - Auth routes
server/routes/authRoutes.js - Resume routes
server/routes/resumeRoutes.js - Resume parsing
server/controllers/resumeController.js - Skill extraction
server/controllers/skillAnalysisController.js - Skill gap analysis
server/controllers/skillGapController.js - Company and role data
server/controllers/jobRequirementController.js
Assessment and insight
- Assessment routes
server/routes/assessmentRoutes.js - Assessment workflow
server/controllers/assessmentController.js - Code and SQL runners
server/services/codeExecutionService.js - Readiness and analytics
server/services/finalJobReadinessService.js
Learning journey
- Learning routes
server/routes/learningRoutes.js - Learning plan and progress
server/controllers/learningController.js - Roadmap recommendations
server/services/learningRecommendationService.js - Learning resources
server/services/learningResourceService.js
Persistent data
- MongoDB
server/config/db.js
Other components
- Career seeker
- YouTube Data API
- Python insight service
ai-service/main.py - Ollama model
Connections 36
- Career seeker → React application: uses
- React application → Authentication UI: renders
- React application → Resume workflow: routes to
- React application → Assessment pages: routes to
- React application → Analytics page: routes to
- React application → Learning page: routes to
- Authentication UI → API services: requests
- Resume workflow → API services: requests
- Assessment pages → API services: requests
- Analytics page → API services: requests
- Learning page → API services: requests
- API services → Express API: sends API calls
- Express API → MongoDB: connects
- Express API → Auth routes: mounts
- Express API → Resume routes: mounts
- Express API → Assessment routes: mounts
- Express API → Learning routes: mounts
- Resume routes → Resume parsing: dispatches
- Resume routes → Skill extraction: dispatches
- Resume routes → Skill gap analysis: dispatches
- Resume parsing → MongoDB: saves resume
- Resume parsing → Company and role data: looks up role
- Skill extraction → MongoDB: uses resume data
- Skill gap analysis → MongoDB: reads requirements
- Assessment routes → Assessment workflow: dispatches
- Assessment workflow → MongoDB: reads and saves attempts
- Assessment workflow → Code and SQL runners: executes submissions
- Assessment workflow → Readiness and analytics: serves readiness
- Assessment routes → Readiness and analytics: dispatches analytics
- Learning routes → Learning plan and progress: dispatches
- Learning plan and progress → Roadmap recommendations: generates plans
- Learning plan and progress → Learning resources: gets resources
- Learning plan and progress → MongoDB: tracks progress
- Roadmap recommendations → Learning resources: attaches resources
- Learning resources → YouTube Data API: fetches videos
- Python insight service → Ollama model: requests generation