An intelligent AI-powered Resume Screening and Candidate Matching System that automatically analyzes resumes and matches candidates with job descriptions using Machine Learning and Natural Language Processing (NLP).
The system helps recruiters identify the best candidates faster by generating match scores, ranking applicants, and providing data-driven hiring insights.
Traditional hiring requires manual resume screening which is time-consuming and inefficient.
This project automates the hiring workflow by using Machine Learning and NLP techniques to evaluate candidate resumes and compare them with job descriptions.
The system:
- Extracts information from resumes
- Matches skills with job descriptions
- Calculates candidate match scores
- Ranks candidates automatically
- Provides insights to help recruiters make decisions
- Upload multiple resumes (PDF format)
- Automatic resume text extraction
- Resume content analysis
- Skill extraction
- Education detection
- Experience detection
- Resume similarity scoring
- Candidate match score
- Candidate ranking system
- Job description matching
- Skills comparison
- Candidate comparison dashboard
- Recruiter notes
- Export results
- Fast and responsive UI
- Interactive dashboard
- Visual skill analysis
- Mobile-friendly design
- Easy navigation
- Secure login & signup
- Authentication system
- Protected routes
- React.js
- TypeScript
- Tailwind CSS
- ShadCN UI
- Vite
- Node.js
- Express.js
- REST APIs
- MySQL
- Resume Text Extraction
- Text Cleaning
- Tokenization
- Stopword Removal
- Keyword Extraction
- Skill Extraction
- Resume text extraction
- Text preprocessing
- Tokenization and cleaning
- TF-IDF feature generation
- Cosine similarity calculation
- ML model prediction
- Candidate ranking
| Model | Purpose | Accuracy |
|---|---|---|
| TF-IDF + Cosine Similarity | Resume Matching | High Precision |
| Logistic Regression | Candidate Classification | 85% |
| Random Forest | Candidate Prediction | 88β90% |
| XGBoost | Advanced Candidate Prediction | 90β92% |
These techniques are used to calculate similarity between resumes and job descriptions.
- Resume text extraction
- Text preprocessing
- Tokenization and cleaning
- TF-IDF feature generation
- Cosine similarity calculation
- Candidate scoring
- Candidate ranking
Frontend (React + TypeScript)
β
Backend API (Node.js + Express)
β
NLP Processing & Matching Engine
β
Database (MySQL)
Candidate_Screening_System
β
βββ Frontend
β βββ src
β βββ components
β βββ pages
β βββ hooks
β βββ types
β βββ main.tsx
β
βββ Backend
β βββ server.js
β βββ routes
β
βββ database
β βββ schema.sql
β
βββ package.json
βββ package-lock.json
βββ README.md
git clone https://github.com/guthayaswanth0123/Candidate_Screening_System.git
cd Candidate_Screening_System
npm install
cd Frontend
npm run dev
cd Backend
node server.js
Step 1
Recruiter enters job description.
Step 2
Recruiter uploads candidate resumes.
Step 3
System extracts resume text.
Step 4
NLP processes the text.
Step 5
Similarity between resume and job description is calculated.
Step 6
Match score is generated.
Step 7
Candidates are ranked automatically.
Candidates are evaluated based on:
- Skill matching
- Keyword similarity
- Resume relevance
- Experience mentions
- Deep learning resume matching
- BERT-based skill extraction
- Recruiter analytics dashboard
- Interview scheduling system
- Resume recommendation system
- HR Recruiters
- Hiring Managers
- Companies
- Recruitment Agencies
- Startups
Gutha Yaswanth
Email: guthayaswanth@gmail.com
GitHub: https://github.com/guthayaswanth0123
This project is developed for educational and portfolio purposes.