CoolFace
Apppublic

swarajaya/user-behavior-analytics

sourceHugging Faceupdated 9mo agoView on Hugging Face
0likes
App README

๐Ÿš€ AI Resume Screening & Ranking System (SaaS)

An End-to-End AI SaaS application that screens and ranks resumes based on a job description using ML + NLP + LLM. Built with Python, deployed with Streamlit, and powered by AI for candidate matching.


๐Ÿ” Features

  • โ€”Upload multiple resumes (PDF)
  • โ€”Upload job description (PDF)
  • โ€”Automatic skill extraction from resumes
  • โ€”Compare candidate skills with job description
  • โ€”Assign match score (0โ€“1)
  • โ€”Rank candidates automatically
  • โ€”Optional: AI explanation for candidate suitability (LLM)
  • โ€”Optional: Download ranked results

๐Ÿ›  Tech Stack

  • โ€”Python โ€“ Main language
  • โ€”Streamlit โ€“ Frontend SaaS app
  • โ€”PyPDF2 โ€“ PDF text extraction
  • โ€”Pandas / NumPy / scikit-learn โ€“ ML & data processing
  • โ€”spaCy โ€“ NLP (optional advanced skill extraction)
  • โ€”OpenAI GPT โ€“ Candidate reasoning (optional)
  • โ€”Hugging Face Spaces โ€“ Deployment

๐Ÿ“ Folder Structure

ai-resume-screening/ โ”‚ โ”œโ”€โ”€ app.py # Streamlit app โ”œโ”€โ”€ requirements.txt # Dependencies โ”œโ”€โ”€ README.md # Project documentation โ”œโ”€โ”€ src/ # Python modules โ”‚ โ”œโ”€โ”€ resumeparser.py โ”‚ โ”œโ”€โ”€ jdparser.py โ”‚ โ”œโ”€โ”€ skillextractor.py โ”‚ โ”œโ”€โ”€ matcher.py โ”‚ โ”œโ”€โ”€ ranker.py โ”‚ โ””โ”€โ”€ llmhelper.py โ”œโ”€โ”€ data/ # Sample demo files (optional) โ”‚ โ”œโ”€โ”€ resumes/ โ”‚ โ”‚ โ””โ”€โ”€ sampleresume.pdf โ”‚ โ””โ”€โ”€ jobdescriptions/ โ”‚ โ””โ”€โ”€ sample_jd.pdf โ””โ”€โ”€ .gitignore


โšก How It Works

  1. 1.Extract text from uploaded PDFs
  2. 2.Extract skills from resumes & job description
  3. 3.Compare skills and calculate match score
  4. 4.Rank candidates by score
  5. 5.Optional: Generate AI explanation for each candidate

๐Ÿ’ป Usage

  1. 1.Clone the repo:
bash
git clone https://github.com/<your-username>/ai-resume-screening.git
cd ai-resume-screening ai-resume-screening/
โ”‚
โ”œโ”€ app.py # Streamlit app
โ”œโ”€ ranker.py # Ranking & matched skills logic
โ”œโ”€ llm_helper.py # Optional AI explanation helper
โ”œโ”€ requirements.txt # Dependencies
โ”œโ”€ uploads/ # Folder for uploaded resumes (auto-created)
โ””โ”€ README.md # Project description & instructions


---

## **๐Ÿ’ก Why This Project is Useful**
- **Saves time** for recruiters by automating candidate shortlisting.  
- Provides **insights into matched skills**, making hiring decisions data-driven.  
- Demonstrates **Python, Streamlit, and NLP text-processing skills**.  
- Fully deployable and **production-ready** on Hugging Face Spaces.  

---

## **๐Ÿ“Œ Optional Enhancements**
- Integrate **OpenAI or Hugging Face LLM** for candidate evaluation text.  
- Add **visual charts** for top candidates and skill coverage.  
- Include **predefined skill lists** for more accurate ranking.  

---

*Try it now! Upload your JD and resumes, and see the AI-powered ranking in action.*