Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“„ Resume ATS Analyzer

Python FastAPI Streamlit License Contributions Welcome

πŸš€ AI-Powered Resume Analysis, ATS Scoring, and Job Description Matching

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!


✨ Features

πŸ“„ Resume Analysis

  • 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)

πŸ“Œ Job Description Matching

  • Paste or upload a Job Description
  • Extract required skills automatically
  • Compare resume against the JD
  • Highlight missing skills and keywords
  • Skill similarity analysis

πŸ“Š ATS Score

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%

πŸ€– AI Suggestions

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

🎯 Keyword Analysis

Example output:

Detected Keywords

βœ” Python
βœ” SQL
βœ” Git
βœ” FastAPI
βœ” Machine Learning

Missing Keywords

✘ Docker
✘ Kubernetes
✘ AWS
✘ CI/CD
✘ Linux

πŸ“ˆ Resume Insights

Analyze every section of your resume:

  • Contact Information
  • Professional Summary
  • Technical Skills
  • Work Experience
  • Projects
  • Education
  • Certifications
  • Achievements
  • Languages

πŸ“ AI Resume Rewriter

Generate improved versions of:

  • Professional Summary
  • Experience
  • Project Descriptions
  • Skills Section
  • Resume Headlines

πŸ“„ Cover Letter Generator

Generate personalized cover letters using:

  • Resume
  • Job Description
  • Company Name
  • Job Role

🎀 Interview Preparation

Generate interview questions based on:

  • Resume
  • Job Description
  • Skills
  • Experience
  • Projects

Categories include:

  • Python
  • SQL
  • OOP
  • DSA
  • FastAPI
  • Machine Learning
  • HR
  • Behavioral
  • System Design

πŸ“Š Resume Comparison

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.

🌍 Planned Features

  • 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

πŸ›  Tech Stack

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

πŸ“‚ Project Structure

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

πŸš€ Installation

Clone the Repository

git clone https://github.com/your-username/resume-ats-analyzer.git

cd resume-ats-analyzer

Create Virtual Environment

python -m venv venv

Windows

venv\Scripts\activate

Linux / macOS

source venv/bin/activate

Install Dependencies

pip install -r requirements.txt

Run the Application

Streamlit

streamlit run app.py

FastAPI

uvicorn app.main:app --reload

🀝 Contributing

We 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.


πŸ“Œ Roadmap

Phase 1

  • Resume Parsing
  • ATS Scoring
  • JD Matching
  • AI Suggestions

Phase 2

  • Resume Rewriter
  • Cover Letter Generator
  • Interview Questions
  • Resume Comparison

Phase 3

  • Authentication
  • Dashboard
  • Resume History
  • Docker Deployment

Phase 4

  • LinkedIn Integration
  • GitHub Profile Analysis
  • Career Roadmap
  • Recruiter Dashboard
  • AI Resume Chat

⭐ Support

If you like this project, please consider giving it a ⭐ Star on GitHub.

It motivates contributors and helps the project reach more developers.


πŸ“œ License

This project is licensed under the MIT License.


πŸ’™ Built with Python, AI, and Open Source

Happy Coding! πŸš€

About

πŸ“„ Resume ATS Analyzer ⭐ Project Vision An AI-powered Resume ATS Analyzer that helps users optimize their resumes for Applicant Tracking Systems (ATS), compares resumes with job descriptions, provides actionable suggestions, and generates an ATS score.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors