CoolFace
Apppublic

SHIVANSH3SRIVASTAVA/resume-checker-backend

sourceHugging Faceupdated 1y agoView on Hugging Face
1likes
App README

๐Ÿง  Resume Checker

Hackathon Project โ€“ Code4EdTech Submission A smart resume evaluation tool built with FastAPI, PostgreSQL, and Streamlit, designed to help candidates tailor their resumes to job descriptions and improve their chances of landing interviews.


๐Ÿš€ Key Features

  • โ€”๐Ÿ“„ Upload resume and job description (PDF, DOCX, TXT)
  • โ€”๐Ÿง  Intelligent scoring based on keyword and semantic match
  • โ€”๐Ÿ•ต๏ธ Bias anonymization (removes name, gender, age indicators)
  • โ€”๐Ÿ“Š Streamlit dashboard with match score and suggestions
  • โ€”๐Ÿ” Robust error handling for file formats and backend failures
  • โ€”โš™๏ธ Automated setup scripts for easy deployment and testing

๐Ÿงฑ Tech Stack

  • โ€”Backend: FastAPI, Pydantic, Uvicorn
  • โ€”Database: PostgreSQL, SQLAlchemy
  • โ€”Frontend: Streamlit
  • โ€”Deployment: Streamlit Cloud / HuggingFace Spaces
  • โ€”Dev Tools: GitHub Desktop, PowerShell, VS Code

๐Ÿ“ฆ Project Structure

resume-checker/
โ”œโ”€โ”€ app/                  # FastAPI backend
โ”‚   โ”œโ”€โ”€ main.py
โ”‚   โ”œโ”€โ”€ models.py
โ”‚   โ”œโ”€โ”€ routes/
โ”‚   โ””โ”€โ”€ utils/
โ”œโ”€โ”€ frontend/             # Streamlit frontend
โ”‚   โ””โ”€โ”€ streamlit_app.py
โ”œโ”€โ”€ init_db.py            # DB initialization script
โ”œโ”€โ”€ requirements.txt      # Python dependencies
โ”œโ”€โ”€ README.md             # Project documentation

๐Ÿงช Local Setup Instructions

1. Clone the Repository

bash
git clone https://github.com/YOUR_USERNAME/resume-checker.git
cd resume-checker

2. Create and Activate Virtual Environment

bash
python -m venv .venv
source .venv/Scripts/activate  # Windows

3. Install Dependencies

bash
pip install -r requirements.txt

4. Initialize PostgreSQL Database

Ensure PostgreSQL is running locally, then:

bash
python init_db.py

5. Start Backend Server

bash
uvicorn app.main:app --reload

6. Launch Frontend

bash
streamlit run frontend/streamlit_app.py

๐ŸŒ Live Demo & Submission Links


๐ŸŽฏ Use Cases

  • โ€”Students preparing for placements
  • โ€”Job seekers tailoring resumes to specific roles
  • โ€”Recruiters evaluating resume-job fit
  • โ€”Career counselors offering resume feedback

๐Ÿ›ก๏ธ Error Handling Highlights

  • โ€”โœ… Detects and handles empty or malformed files
  • โ€”โœ… Validates file types and content
  • โ€”โœ… Displays user-friendly error messages
  • โ€”โœ… Logs backend exceptions for debugging

๐Ÿ“ˆ Future Enhancements

  • โ€”๐Ÿ” NLP-based semantic scoring (spaCy, BERT)
  • โ€”๐Ÿงพ Resume formatting suggestions
  • โ€”๐Ÿง  AI-generated resume edits
  • โ€”๐Ÿ“ค Email integration for feedback delivery

๐Ÿค Contributor

Shivansh โ€“ Developer, UX Designer, Backend Architect


๐Ÿ“œ License

This project is licensed under the MIT License. See LICENSE for details.


๐Ÿ™Œ Acknowledgments

  • โ€”Code4EdTech Hackathon organizers
  • โ€”Streamlit and FastAPI communities
  • โ€”PostgreSQL documentation and tutorials