Skip to content

LinearT-commit/AI_Resume_Analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“„ AI Resume Analyzer

An AI-powered ATS Resume Analyzer built with Python, Streamlit, and Google Gemini AI that helps job seekers evaluate how well their resume matches a Job Description (JD).

The application extracts text from uploaded PDF resumes, identifies technical skills using NLP, calculates an ATS-style Resume Match Score, detects matched and missing skills, generates personalized AI-powered feedback using Google Gemini, visualizes results through charts, and allows users to download a detailed resume analysis report.


✨ Features

  • πŸ“„ Upload Resume (PDF)
  • πŸ” Automatic Resume Text Extraction
  • 🧠 NLP-Based Skill Extraction
  • πŸ“‹ Job Description Analysis
  • 🎯 ATS Resume Match Score
  • πŸ“Š Resume Statistics Dashboard
  • βœ… Matched Skills Detection
  • ❌ Missing Skills Identification
  • πŸ’‘ Resume Improvement Suggestions
  • πŸ€– AI Resume Feedback using Google Gemini
  • πŸ“ˆ Skill Distribution Pie Chart
  • πŸ“₯ Download ATS Analysis Report

πŸ›  Tech Stack

Programming Language

  • Python

Frontend

  • Streamlit

AI

  • Google Gemini API

Libraries

  • PyPDF2
  • Matplotlib
  • python-dotenv
  • google-genai
  • Streamlit

Concepts Used

  • Natural Language Processing (NLP)
  • ATS Resume Screening
  • Skill Matching
  • Prompt Engineering
  • Generative AI
  • Data Visualization

πŸ“‚ Project Structure

AI_Resume_Analyzer/
β”‚
β”œβ”€β”€ ai/
β”‚   └── ai_feedback.py
β”‚
β”œβ”€β”€ assets/
β”‚   β”œβ”€β”€ home.png
β”‚   β”œβ”€β”€ resume.png
β”‚   β”œβ”€β”€ analysis.png
β”‚   └── chart.png
β”‚
β”œβ”€β”€ data/
β”‚   └── skills.csv
β”‚
β”œβ”€β”€ uploads/
β”‚
β”œβ”€β”€ utils/
β”‚   β”œβ”€β”€ ats_score.py
β”‚   β”œβ”€β”€ pdf_reader.py
β”‚   └── skill_extractor.py
β”‚
β”œβ”€β”€ .env
β”œβ”€β”€ .gitignore
β”œβ”€β”€ app.py
β”œβ”€β”€ requirements.txt
└── README.md

Note: The .env file is not included in the repository. Users must create their own .env file and add their Gemini API key.


πŸ“· Screenshots

🏠 Home Page

Home


πŸ“„ Resume Upload

Resume


πŸ“Š ATS Analysis

Analysis


πŸ“Š Gemini Feedback

AI feedback


πŸ“ˆ Skill Distribution

Chart


βš™οΈ Installation

1️⃣ Clone the Repository

git clone https://github.com/LinearT-commit/AI_Resume_Analyzer.git

2️⃣ Move into the Project Folder

cd AI_Resume_Analyzer

3️⃣ Create a Virtual Environment

python -m venv venv

4️⃣ Activate the Virtual Environment

Windows

venv\Scripts\activate

Linux / macOS

source venv/bin/activate

5️⃣ Install Dependencies

pip install -r requirements.txt

6️⃣ Create a .env File

Inside the project folder, create a file named:

.env

Add your Gemini API key:

GOOGLE_API_KEY=YOUR_API_KEY

7️⃣ Run the Application

streamlit run app.py

πŸ“ˆ How It Works

  1. Upload your Resume in PDF format.
  2. Resume text is extracted automatically.
  3. Technical skills are identified using NLP.
  4. Paste the Job Description.
  5. ATS Resume Match Score is calculated.
  6. Resume statistics are displayed.
  7. Matched and missing skills are identified.
  8. Resume improvement suggestions are generated.
  9. Google Gemini AI provides personalized resume feedback.
  10. Results are visualized using a pie chart.
  11. Download a detailed ATS Resume Analysis Report.

πŸ€– AI Integration

This project integrates Google Gemini AI to provide intelligent resume feedback.

The AI analyzes:

  • ATS Match Score
  • Matched Skills
  • Missing Skills

and generates:

  • Overall Resume Evaluation
  • Resume Strengths
  • Weaknesses
  • Improvement Suggestions
  • Final ATS Verdict

This combines traditional ATS analysis with Generative AI to provide more meaningful resume insights.


🎯 Future Improvements

  • πŸ“ AI Resume Rewriting
  • πŸŽ™ AI Mock Interview Questions
  • πŸ“„ PDF Report Export
  • 🌐 Resume Parsing using LLMs
  • ☁️ Streamlit Cloud Deployment
  • πŸ“Š Resume Analytics Dashboard
  • 🎯 Multi-Job Comparison
  • πŸ“Œ Keyword Density Analysis

🀝 Contributing

Contributions are welcome!

If you would like to improve this project, feel free to fork the repository and submit a Pull Request.


πŸ‘¨β€πŸ’» Author

Unnati Shaw

GitHub

https://github.com/LinearT-commit

LinkedIn

https://linkedin.com/in/unnati-shaw


⭐ Support

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

It helps others discover the project and motivates further improvements.

About

AI-powered ATS Resume Analyzer with Gemini AI Feedback, PDF Parsing, Skill Extraction, Resume Matching, Interactive Charts, and Downloadable Reports.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages