How anuradhakadam035-ops/swaroop-project- works
Purpose and Topology
VIDYASETU is an AI-assisted career-guidance platform for students. It combines registration/profile data, MCQ assessments, skills, and education context to produce career matches, skill-gap analysis, learning roadmaps, courses, jobs, resumes, interview support, and reports. The repository is a static multi-page frontend plus a Python backend API.
Application Entry Points
• Backend API bootstrap and route composition: backend/main.py
• Backend configuration and database access boundary: backend/config.py, backend/database.py
• Browser entry pages include frontend/index.html, frontend/dashboard.html, and role-specific admin pages such as frontend/admin.html.
• Frontend JavaScript calls backend APIs through frontend/css/js/api.js; feature pages have corresponding feature scripts.
API and Domain Boundary
FastAPI-style routers organize the API by user workflow rather than a single monolith: authentication, profile/dashboard, assessment, career/recommendations, and AI features. Representative API modules are backend/routers/auth.py, backend/routers/assessment.py, backend/routers/recommendation.py, backend/routers/roadmap.py, and backend/routers/resume.py.
Schemas define request/response contracts separately from persistent entities, while models represent the stored domain: backend/schemas/assessment.py, backend/schemas/recommendation.py, backend/models/assessment.py, backend/models/recommendation.py.
Identity, Roles, and Persistence
Users and administrators are distinct authenticated actors. User authentication/security is isolated in backend/security/auth.py; administrator authentication is isolated in backend/security/admin_auth.py. Core persisted entities cover users, assessments/questions/answers/results, recommendations, resumes, jobs, chats, interviews, and admin-managed courses: backend/models/user.py, backend/models/assessment_result.py, backend/models/student_answer.py, backend/models/admin_course.py.
This provides the key boundary between HTTP/UI input, validated schemas, authorization, and database-backed records.
Assessment-to-Recommendation Pipeline
The primary control flow is: user registers/authenticates → completes assessment questions → answers and results are stored → recommendation logic evaluates profile/skills/assessment signals → generated career matches and gaps are returned to dashboard/report views.
Relevant stages are implemented in backend/routers/assessment.py, backend/services/recommendation_engine.py, backend/services/skill_service.py, and backend/services/roadmap_generator.py. Rule-based career knowledge and skill extraction/matching utilities support the pipeline: backend/utils/career_rules.py, backend/utils/skill_extractor.py, backend/utils/skill_matcher.py.
AI and Career-Development Services
Gemini is the explicit AI-provider integration boundary: backend/core/gemini.py. AI-facing router/service layers support general AI output, chatbot conversations, and interview assistance: backend/routers/ai.py, backend/services/ai_service.py, backend/services/chatbot_ai.py, backend/services/interview_ai.py.
Derived guidance is exposed as recommendations, roadmaps, courses, and jobs through backend/routers/recommendation.py, backend/routers/course.py, and backend/routers/jobs.py.
Resume, ATS, and Document Processing
Resume workflows ingest and analyze candidate documents, calculate ATS-oriented feedback, and generate reportable output. The API/service/utilities boundary is visible in backend/routers/resume.py, backend/services/resume_service.py, backend/services/ats_service.py, and backend/utils/pdf_reader.py. PDF generation is separated in backend/services/pdf_service.py.
Administration and Analytics
Administrative routes manage admins, students, courses, jobs, questions, and dashboard operations: backend/routers/admin.py, backend/routers/admin_questions.py, backend/routers/admin_course.py, backend/routers/admin_students.py. Analytics has its own API/service layer—backend/routers/analytics.py, backend/services/analtyics_service.py—allowing aggregate reporting to remain distinct from student-facing recommendation generation.
Components 20
Browser frontend
Static multi-page student and admin interface.
- Student & admin pages
frontend/index.html - API client
frontend/css/js/api.js
Backend API
FastAPI bootstrap and workflow routers.
- API bootstrap · Composes backend routes.
backend/main.py - User workflow routers · Auth, assessment, recommendations, roadmaps, resumes, courses, and jobs.
backend/routers/recommendation.py - Admin & analytics routers · Administration and aggregate reporting endpoints.
backend/routers/admin.py
Guidance services
Assessment, recommendation, AI, and document pipelines.
- Assessment workflow · Captures questions, answers, and results.
backend/routers/assessment.py - Career recommendation engine · Evaluates profile, skills, and assessment signals.
backend/services/recommendation_engine.py - Career rules & matching
backend/utils/career_rules.py - Skill gap service
backend/services/skill_service.py - Roadmap generator
backend/services/roadmap_generator.py - Gemini integration
backend/core/gemini.py - AI chat & interview services · General AI, chatbot, and interview assistance.
backend/services/ai_service.py - Resume & ATS analysis · Processes resumes and produces ATS-oriented feedback.
backend/services/resume_service.py - PDF reports
backend/services/pdf_service.py - Analytics service
backend/services/analtyics_service.py
Identity and data
Authorization, contracts, and persisted domain records.
- API schemas
backend/schemas/assessment.py - User authentication
backend/security/auth.py - Admin authentication
backend/security/admin_auth.py - Database access
backend/database.py - Domain records · Users, answers, results, recommendations, resumes, jobs, chats, interviews, and courses.
backend/models/assessment_result.py
Connections 21
- Student & admin pages → API client: uses API client
- API client → API bootstrap: HTTP requests
- API bootstrap → User workflow routers: mounts
- API bootstrap → Admin & analytics routers: mounts
- User workflow routers → API schemas: validates
- User workflow routers → User authentication: authenticates users
- Admin & analytics routers → Admin authentication: authenticates admins
- Assessment workflow → Domain records: stores answers and results
- User workflow routers → Assessment workflow: serves assessment
- Assessment workflow → Career recommendation engine: assessment signals
- Career recommendation engine → Career rules & matching: applies rules
- Career recommendation engine → Skill gap service: finds skill gaps
- Skill gap service → Roadmap generator: guides roadmap
- Career recommendation engine → Domain records: stores matches
- User workflow routers → AI chat & interview services: AI endpoints
- AI chat & interview services → Gemini integration: AI generation
- User workflow routers → Resume & ATS analysis: resume endpoints
- Resume & ATS analysis → PDF reports: report output
- Admin & analytics routers → Analytics service: reporting endpoints
- Analytics service → Domain records: aggregates records
- Domain records → Database access: persists through