Analyze resumes, compare them with job descriptions, calculate an ATS score, identify missing keywords, and receive AI-powered recommendations to improve your chances of getting shortlisted.
β If you find this project useful, don't forget to Star the repository!
- Upload PDF, DOCX, or TXT resumes
- Automatic resume parsing
- Extract skills, education, experience, and projects
- Resume section validation
- OCR support for scanned resumes (Coming Soon)
- Paste or upload a Job Description
- Extract required skills automatically
- Compare resume against the JD
- Highlight missing skills and keywords
- Skill similarity analysis
Receive a detailed ATS report including:
- β Overall ATS Score
- β Keyword Match
- β Skills Match
- β Experience Match
- β Education Match
- β Formatting Score
- β Section Completeness
Example:
Overall ATS Score
86 / 100
Keyword Match ββββββββββ 92%
Skills Match βββββββββ 88%
Experience ββββββββ 81%
Formatting ββββββββββ 96%
Education βββββββββ 90%
The AI provides personalized recommendations such as:
- Add missing technical skills
- Improve project descriptions
- Strengthen experience bullets
- Use impactful action verbs
- Quantify achievements
- Improve ATS readability
- Remove unnecessary content
- Optimize keyword density
Example output:
Detected Keywords
β Python
β SQL
β Git
β FastAPI
β Machine Learning
Missing Keywords
β Docker
β Kubernetes
β AWS
β CI/CD
β Linux
Analyze every section of your resume:
- Contact Information
- Professional Summary
- Technical Skills
- Work Experience
- Projects
- Education
- Certifications
- Achievements
- Languages
Generate improved versions of:
- Professional Summary
- Experience
- Project Descriptions
- Skills Section
- Resume Headlines
Generate personalized cover letters using:
- Resume
- Job Description
- Company Name
- Job Role
Generate interview questions based on:
- Resume
- Job Description
- Skills
- Experience
- Projects
Categories include:
- Python
- SQL
- OOP
- DSA
- FastAPI
- Machine Learning
- HR
- Behavioral
- System Design
Compare multiple resumes.
Example:
Resume A
ATS Score : 89
Resume B
ATS Score : 81
Recommendation
Resume A has stronger keyword coverage,
better formatting, and improved project descriptions.
- AI Career Coach
- LinkedIn Resume Import
- GitHub Profile Analysis
- Portfolio Evaluation
- Resume Version History
- Salary Prediction
- Job Recommendation Engine
- Multi-language Support
- Recruiter Dashboard
- Resume Chat Assistant
| Category | Technology |
|---|---|
| Language | Python |
| Backend | FastAPI |
| Frontend | Streamlit / React |
| AI Models | OpenAI, Gemini, Groq |
| Resume Parsing | PyMuPDF, pdfplumber, python-docx |
| NLP | spaCy, Sentence Transformers |
| Embeddings | FAISS |
| Database | SQLite / PostgreSQL |
| Authentication | JWT |
| Deployment | Docker, Render, Railway |
resume-ats-analyzer/
βββ app/
β βββ api/
β βββ ai/
β βββ models/
β βββ parser/
β βββ scoring/
β βββ services/
β βββ utils/
β βββ config.py
β
βββ frontend/
βββ tests/
βββ docs/
βββ examples/
βββ screenshots/
β
βββ .github/
β βββ ISSUE_TEMPLATE/
β βββ workflows/
β βββ PULL_REQUEST_TEMPLATE.md
β
βββ requirements.txt
βββ Dockerfile
βββ docker-compose.yml
βββ README.md
βββ LICENSE
βββ CONTRIBUTING.md
git clone https://github.com/your-username/resume-ats-analyzer.git
cd resume-ats-analyzerpython -m venv venvvenv\Scripts\activatesource venv/bin/activatepip install -r requirements.txtstreamlit run app.pyuvicorn app.main:app --reloadWe welcome contributions from developers of all experience levels.
You can contribute by:
- Adding new features
- Fixing bugs
- Improving documentation
- Writing tests
- Optimizing performance
- Supporting additional resume formats
- Enhancing AI prompts
- Improving ATS scoring algorithms
Please read CONTRIBUTING.md before submitting a Pull Request.
- Resume Parsing
- ATS Scoring
- JD Matching
- AI Suggestions
- Resume Rewriter
- Cover Letter Generator
- Interview Questions
- Resume Comparison
- Authentication
- Dashboard
- Resume History
- Docker Deployment
- LinkedIn Integration
- GitHub Profile Analysis
- Career Roadmap
- Recruiter Dashboard
- AI Resume Chat
If you like this project, please consider giving it a β Star on GitHub.
It motivates contributors and helps the project reach more developers.
This project is licensed under the MIT License.