How basavajayakrishna/ai-resume-analyzer works
AI Resume Analyzer is a Streamlit app that takes a PDF or DOCX resume and an optional target-job description, then presents extracted candidate details, skill matches, ATS scoring, and AI feedback or rewritten resume text. The sampled app shows the main orchestration and calls; some argument details are omitted from the excerpts, so the graph avoids claiming more specific data wiring than those excerpts support.
Main entry points: app.py Streamlit App · ai_analyzer.py AI Resume Analyzer · resume_parser.py Resume Parser · job_matcher.py Job Matcher
Components 8
Application
- Streamlit App
app.py
Resume Processing
- Resume Parser
utils/resume_parser.py - Resume Analyzer
utils/resume_analyzer.py
Job Evaluation
- Job Matcher
utils/job_matcher.py - ATS Scorer
utils/ats_scorer.py
AI Assistance
- AI Resume Analyzer
utils/ai_analyzer.py
Other components
- Resume User
- OpenAI API
Connections 11
- Resume User → Streamlit App: uploads and enters job
- Streamlit App → Resume Parser: extracts resume text
- Resume Parser → Streamlit App: returns text
- Streamlit App → Resume Analyzer: analyzes resume text
- Streamlit App → Job Matcher: extracts job skills
- Streamlit App → Job Matcher: calculates match
- Streamlit App → ATS Scorer: calculates ATS score
- Streamlit App → AI Resume Analyzer: requests AI analysis
- Streamlit App → AI Resume Analyzer: requests rewrite
- AI Resume Analyzer → OpenAI API: sends prompts
- OpenAI API → AI Resume Analyzer: returns generated text