A web-based AI-powered application that analyzes resumes and provides structured feedback including scoring, strengths, weaknesses, missing skills, and improvement suggestions.
It also supports job description matching and PDF report generation.
👉 Click here to open the live app
-
Upload resume (PDF / DOCX)
-
Extract and clean text automatically
-
AI-powered structured evaluation
-
Resume score (0–100)
-
Rating: Excellent / Good / Average / Needs Improvement
-
ATS compatibility check (Pass / Fail)
-
Profile summary generation
-
Strengths & weaknesses identification
-
Missing sections / skills detection
-
Improvement suggestions
-
Keyword extraction (Top 12 only)
-
Section-wise scoring:
- Skills
- Projects
- Experience
- Education
- Compare resume with job description
- Match score (0–100)
- Matched skills (exact overlap only)
- Missing skills extraction
- AI-based comparison analysis
- Personalized improvement suggestions
- Clean and simple UI
- Download analysis as PDF report
- Supports both ATS analysis and job matching
- HTML
- CSS
- JavaScript
- Python
- FastAPI
- Groq API
- Model:
llama-3.1-8b-instant
- PyPDF2 → PDF text extraction
- docx2txt → DOCX parsing
- FastAPI → Backend framework
- Groq → AI model inference
- jsPDF → PDF generation
- re (Regex) → Text cleaning
git clone <your-repo-link>
cd resume-analyzerpip install fastapi uvicorn PyPDF2 docx2txt groqimport os
client = Groq(api_key=os.getenv("GROQ_API_KEY"))uvicorn main:app --reloadOpen index.html in your browser.
- Upload resume
- Extract text (PDF/DOCX)
- Clean text using regex
- Send data to AI model
- Receive structured JSON response
- Validate and process output
- Display results in UI
- Optional: Match with job description
- Download report as PDF
- Structured prompt-based evaluation
- Strict JSON output format
- Controlled randomness (temperature = 0.3)
- Ensures realistic feedback
- Direct skill comparison
- Overlap-based matching
- Missing skills extraction
- AI-generated improvement suggestions
- Enforced valid JSON output
- No markdown formatting in response
- Consistent field structure
- No duplicate keywords
- Must include weaknesses
- Concise output format
- JSON cleaning logic implemented
- Safe parsing for AI responses
- Fallback values for missing fields
- Frontend crash prevention
- Regex-based text normalization
- Depends on AI response quality
- Limited parsing of complex resume layouts
- No deep visual structure understanding
- Basic UI design
- No authentication system
- Advanced NLP-based parsing
- Improved UI/UX design
- Cloud deployment
- Styled PDF reports
- Enhanced scoring system
- Multi-user support
This project demonstrates practical integration of AI into a real-world use case, focusing on structured output generation, prompt engineering, and robust handling of inconsistent AI responses.
