How kimdfarm/dmu_graduation_project works
This repository is an AI-assisted employment-support service for IT students. The principal workflow is to create or upload career documents, analyze GitHub and skills, then use job matching and AI feedback to improve application materials. The website exposes account, resume, cover-letter, job, and profile workflows; the FastAPI backend provides corresponding APIs and a separate AI analysis application. The README also describes recommendations and interview preparation. Some routes and integrations are unsampled, so only documented or source-index-supported connections are shown.
Main entry points: main.py FastAPI application · App.jsx Website router · app.py AI analysis app · coverletters.py Cover-letter APIs
Components 24
Web experience
- Website router
frontend/website/src/App.jsx - Account access
frontend/website/src/pages/login/Login.jsx - Resume workflow
frontend/website/src/pages/resume/ResumeNew.jsx - Cover letters
frontend/website/src/pages/CoverLetter/CoverLetterDetail.jsx - GitHub connection
frontend/website/src/pages/resume/DeveloperTestGithub.jsx - Job browsing
frontend/website/src/pages/Job/JobBoard.jsx
Career APIs
- FastAPI application
backend/app/main.py - Sign-in and signup
backend/app/routers/login.py - Resume APIs
backend/app/routers/resume.py - Document parsing
backend/app/routers/imageandfileupload/file_parser.py - Cover-letter APIs
backend/app/routers/coverletters.py - Writing assistance
backend/app/routers/sections.py - GitHub analysis API
backend/app/routers/github_data/github_groq_data.py - Job recommendations
backend/app/routers/recommendation.py - Job collection
backend/app/utils/scheduler.py
AI analysis
- AI analysis app
backend/AI/app.py - Recruit data loader
backend/AI/src/data_loader.py - Topic modeling
backend/AI/src/lsa_lda_model.py - Job matching
backend/AI/src/recommender.py - Resume feedback
backend/AI/src/gpt_feedback.py
External data
- Supabase data
backend/app/core/config.py - Job-board sources
- LLM providers
Other components
- IT student
Connections 27
- IT student → Website router: uses
frontend/website/src/App.jsx - Website router → Account access: routes to
frontend/website/src/App.jsx - Website router → Resume workflow: routes to
frontend/website/src/App.jsx - Website router → Cover letters: routes to
frontend/website/src/App.jsx - Website router → GitHub connection: routes to
frontend/website/src/App.jsx - Website router → Job browsing: routes to
frontend/website/src/App.jsx - Website router → FastAPI application: calls APIs
- FastAPI application → Sign-in and signup: registers
backend/app/main.py - FastAPI application → Resume APIs: registers
backend/app/main.py - FastAPI application → Document parsing: registers
backend/app/main.py - FastAPI application → Cover-letter APIs: registers
backend/app/main.py - FastAPI application → Writing assistance: registers
backend/app/main.py - FastAPI application → GitHub analysis API: registers
backend/app/main.py - FastAPI application → Job recommendations: registers
backend/app/main.py - Sign-in and signup → Supabase data: uses client
backend/app/routers/login.py - Cover-letter APIs → Supabase data: uses client
backend/app/routers/coverletters.py - Cover-letter APIs → Document parsing: uses parser
- Writing assistance → Supabase data: uses client
backend/app/routers/sections.py - Writing assistance → LLM providers: requests editing
backend/app/routers/sections.py - Job collection → Job-board sources: collects listings
backend/app/utils/scheduler.py - Job recommendations → Job collection: uses collected jobs
backend/app/utils/scheduler.py - IT student → AI analysis app: submits resume
backend/AI/app.py - AI analysis app → Recruit data loader: loads listings
backend/AI/app.py - AI analysis app → Topic modeling: fits topics
backend/AI/app.py - AI analysis app → Job matching: fits and ranks
backend/AI/app.py - AI analysis app → Resume feedback: requests feedback
backend/AI/app.py - Resume feedback → LLM providers: generates feedback
backend/AI/src/gpt_feedback.py