SmartRecruit AI is an intelligent Applicant Tracking System (ATS) designed to streamline the recruitment process. It leverages the power of OpenAI (GPT-4o) and Vector Embeddings to automatically parse resumes, match them against job descriptions, and rank candidates based on relevance.
-
📄 Automated Resume Parsing:
- Extracts key details (Name, Email, Phone, Skills) from PDF resumes automatically.
- Supports bulk uploading of multiple CVs at once.
-
🧠 AI-Powered Matching:
- Uses Semantic Search (Cosine Similarity) to compare resumes with job descriptions.
- Scores candidates from 0% to 100% based on relevance.
-
📊 Intelligent Ranking & Status:
- Categorizes candidates as Perfect Match, Strong Candidate, Potential, or Mismatch.
- Displays a visual match score progress bar.
-
🔎 Smart Dashboard:
- View all processed candidates in a sleek, glassmorphism-style dashboard.
- Quickly filter and view original PDF resumes directly in the browser.
- Python (3.10+)
- FastAPI - High-performance web framework.
- PostgreSQL - Relational database for storage.
- SQLAlchemy - ORM for database interaction.
- OpenAI API - GPT-4o & text-embedding-3-small for AI logic.
- scikit-learn - For cosine similarity calculations.
- PDFPlumber - For text extraction from PDFs.
- React.js (Vite) - Fast and modern frontend library.
- Tailwind CSS (v4) - For beautiful, responsive styling.
- Axios - For API communication.
Follow these instructions to set up the project locally.
- Python 3.10 or higher
- Node.js (v18 or higher)
- PostgreSQL installed and running
git clone https://github.com/Randidu/smart-recruit-ai.git
cd smart-recruit-ai- Navigate to the backend folder:
cd backend - Create and activate a virtual environment (optional but recommended):
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
- Configure Environment Variables:
- Create a
.envfile in thebackenddirectory. - Add your OpenAI API Key and Database URL:
OPENAI_API_KEY=your_openai_api_key_here DATABASE_URL=postgresql://user:password@localhost/smartrecruit
- Create a
- Run the server:
python -m uvicorn main:app --reload
- Navigate to the frontend folder (open a new terminal):
cd frontend - Install dependencies:
npm install
- Run the development server:
npm run dev
(Add screenshots of your Upload Section and Results Dashboard here)
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License.