Skip to content

nirajshevade/Resume-Parser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI Resume Parsing System

An end-to-end resume parsing stack with FastAPI backend, Streamlit UI, and MongoDB Atlas storage. It extracts name, email, phone, skills, education, and experience from PDF or DOCX resumes using spaCy NER, regexes, rule-based patterns, and TF-IDF skill matching.

Features

  • Upload resumes (PDF, DOCX) via FastAPI or Streamlit.
  • Text extraction with pdfplumber and python-docx.
  • NLP pipeline with spaCy en_core_web_sm, regex contact parsing, rule-based education/experience extraction.
  • Skill detection from a curated dictionary plus TF-IDF cosine similarity.
  • Structured JSON storage in MongoDB Atlas with indexes for fast search/filter.
  • FastAPI endpoints for upload, retrieval, and search; Streamlit dashboard for manual uploads/search.

Quickstart

  1. Python env

    python -m venv .venv
    .venv\Scripts\activate   # Windows
    pip install -r requirements.txt
    python -m spacy download en_core_web_sm
  2. Environment

    Copy .env.example to .env and set MONGODB_URI, MONGODB_DB, MONGODB_COLLECTION, optionally SKILL_DICTIONARY_PATH.

  3. Run FastAPI

    uvicorn app.api.main:app --reload --port 8000
    • Upload: POST /api/resumes (multipart file file).
    • Get by id: GET /api/resumes/{id}.
    • Search: GET /api/resumes/search?skill=python&text=data&name=smith.
  4. Run Streamlit UI

    # from project root
    set PYTHONPATH=.            # PowerShell: $env:PYTHONPATH='.'
    streamlit run app/ui/streamlit_app.py

    Upload a resume to preview parsed JSON and optionally persist to MongoDB.

Notes

  • Indexes are created automatically on first DB use (email, skills, name, education.degree, experience.company).
  • Skill dictionary lives at data/skills.json; extend it to improve matching.
  • For production, secure your MongoDB credentials and consider larger spaCy models.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages