Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 AI Resume Screening System

An AI-powered Resume Screening Tool that analyzes, ranks, and shortlists candidates based on job descriptions using Natural Language Processing (NLP) and Machine Learning.


📌 Project Overview

This project automates the resume screening process by:

  • Extracting text from resumes (TXT, PDF, DOCX)
  • Identifying relevant skills using NLP
  • Matching resumes with job descriptions
  • Scoring and ranking candidates
  • Shortlisting top candidates automatically

🎯 Features

  • Resume Parsing (TXT, PDF, DOCX)
  • Skill Extraction using NLP
  • TF-IDF + Cosine Similarity
  • Candidate Ranking System
  • Automatic Shortlisting
  • Streamlit Interactive Dashboard
  • CSV Export of Results

🧠 Tech Stack

  • Python
  • Pandas, NumPy
  • Scikit-learn
  • spaCy (NLP)
  • pdfplumber, python-docx
  • Streamlit

⚙️ System Workflow

Resume Upload → Text Extraction → Cleaning → Skill Extraction → Matching → Scoring → Ranking → Shortlisting → Dashboard


📂 Project Structure

Automated-Resume-Screening-Tool/
│
├── data/
│   └── job_description.txt
│
├── docs/
│   ├── approach.md
│   ├── architecture.md
│   └── project_overview.md
│
├── images/
│   ├── dashboard.png
│   ├── ranking.png
│   ├── chart.png
│   ├── upload.png
│   └── csv_output.png
│
├── outputs/
│   └── results.csv
│
├── resumes/
│   ├── resume1.txt
│   ├── resume2.txt
│   ├── resume3.txt
│   ├── resume4.txt
│   ├── resume5.txt
│   ├── resume6.txt
│   └── resume7.txt
│
├── src/
│   ├── extractor.py
│   ├── scorer.py
│   └── utils.py
│
├── app.py
├── main.py
├── requirements.txt
├── .gitignore
└── README.md

🚀 How to Run

1️⃣ Clone the repository

git clone https://github.com/VaishnavaDevi-R/Automated-Resume-Screening-Tool.git
cd Automated-Resume-Screening-Tool

2️⃣ Create virtual environment

python -m venv venv
venv\Scripts\activate

3️⃣ Install dependencies

pip install -r requirements.txt
python -m spacy download en_core_web_sm

4️⃣ Run CLI version

python main.py

Output:

outputs/results.csv

5️⃣ Run Dashboard

streamlit run app.py

📊 Sample Output

Resume Score Status
resume1.txt 0.78 Shortlisted
resume2.txt 0.52 Shortlisted
resume3.txt 0.30 Rejected

📸 Screenshots

🖥 Dashboard

Dashboard

📋 Ranking Table

Ranking

📈 Score Chart

Chart

📂 Upload Section

Upload

📄 CSV Output

CSV


💡 Key Concepts Used

  • TF-IDF Vectorization
  • Cosine Similarity
  • NLP-based Skill Matching
  • Ranking Algorithms

🎯 Real-World Applications

  • Applicant Tracking Systems (ATS)
  • HR Automation
  • Resume Filtering Systems
  • Talent Analytics

🚀 Future Improvements

  • Deep Learning (BERT / Transformers)
  • Resume Feedback Suggestions
  • Skill Gap Analysis
  • Cloud Deployment
  • Explainable AI

👩‍💻 Author

Vaishnava Devi


🌟 Support

If you like this project:

⭐ Star this repo 🍴 Fork it 📢 Share it


About

AI-powered Resume Screening System using NLP and Machine Learning to analyze, rank, and shortlist candidates based on job descriptions with an interactive Streamlit dashboard.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages