Resume Matcher is a modern Python GUI application that compares your resume to a job description using NLP. It provides:
- A Match Score (based on keyword overlap)
- A Similarity Score (based on TF-IDF cosine similarity)
- Beautiful circular progress indicators
- Lists of matched and missing keywords
- A clean, professional UI using PyQt5
git clone https://github.com/mtafoya-web/ResumeMatcher.git
cd ResumeMatcher(optional create virtual enviorment)
python -m venv venv
venv\Scripts\activate # Windows
# or
source venv/bin/activate # macOS/Linuxinstall python dependancies
pip install PyQt5==5.15.9 scikit-learn==1.4.1.post1 spacy==3.7.2 numpy==1.24.4 threadpoolctl==3.1.0 joblib==1.3.2 scipy==1.10.1install the spaCy model
python -m spacy download en_core_web_smHow to run the app
python main.py- Upload resume text
- Upload job description text
- Keyword extraction
- Match score calculation
- Cosine similarity scoring
- Missing keyword detection
- Clean GUI interface
-
Text Preprocessing
- Lowercasing
- Tokenization
- Stopword removal
-
Vectorization
- TF-IDF vectorization converts text into numerical vectors.
-
Similarity Calculation
- Cosine similarity measures how close the resume is to the job description.
-
Keyword Analysis
- Identifies overlapping keywords
- Detects missing important job-related terms
- Python
- Scikit-learn
- TF-IDF Vectorizer
- Cosine Similarity
- Tkinter (GUI)