Skip to content

Arfaad/JobMatchAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JobMatch AI - Your Career Co-Pilot

An intelligent AI-powered job matching platform that revolutionizes the hiring process by analyzing resume-job compatibility using advanced NLP, predicting salary ranges, and calculating company-fit scores.

Features

Core AI Analysis

  • Compatibility Score: Advanced semantic matching between resume and job description using NLP algorithms
  • Salary Prediction: Data-driven salary range predictions based on skills, experience, and job requirements
  • Company-Fit Score: Cultural alignment analysis between candidate values and company culture

User Features

  • Secure authentication with Supabase
  • Upload resume as text file or paste directly
  • Analyze multiple job opportunities
  • View complete analysis history
  • Track compatibility scores, salary predictions, and company fit
  • Skill extraction and matching
  • Experience level detection

Technology Stack

Frontend

  • React 18 with TypeScript
  • Tailwind CSS for styling
  • Lucide React for icons
  • Vite for fast development and building

Backend

  • Supabase for database and authentication
  • Edge Functions for serverless API endpoints
  • PostgreSQL with Row Level Security

AI/ML Components

  • NLP-based semantic text analysis
  • Jaccard similarity for text matching
  • Experience and skill extraction algorithms
  • Salary prediction model
  • Company culture alignment scoring

Database Schema

Tables

  1. profiles - User profile information
  2. resumes - Uploaded resume data and extracted information
  3. job_analyses - Complete analysis results with scores
  4. saved_jobs - Bookmarked jobs with notes and status tracking

Getting Started

Prerequisites

  • Node.js 18+ installed
  • Supabase account and project

Installation

  1. Clone the repository
  2. Install dependencies:
npm install
  1. Set up environment variables in .env:
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
  1. The database schema and Edge Functions are already deployed via Supabase

Development

Run the development server:

npm run dev

Build

Build for production:

npm run build

How It Works

1. Resume Analysis

  • Upload resume as text file or paste content
  • System extracts skills, experience, and professional summary
  • Creates semantic representation of candidate profile

2. Job Description Processing

  • Paste job description and provide job details
  • System analyzes requirements, skills, and responsibilities
  • Creates semantic representation of job requirements

3. AI-Powered Matching

  • Compatibility Score: Calculates semantic similarity between resume and job using advanced text analysis

  • Salary Prediction: Predicts salary range based on:

    • Years of experience
    • Skills matched (with premium for high-value skills)
    • Job title and seniority level
    • Market data analysis
  • Company-Fit Score: Analyzes cultural alignment using:

    • Professional values from resume
    • Company culture keywords
    • Work style preferences

4. Results Dashboard

  • Visual representation of all scores
  • Detailed skill matching breakdown
  • Salary range with confidence intervals
  • Historical analysis tracking

API Endpoints

Edge Functions

analyze-job-match

Performs complete job analysis including compatibility, salary, and company fit.

Request:

{
  "resumeText": "string",
  "jobDescription": "string",
  "jobUrl": "string (optional)",
  "jobTitle": "string (optional)",
  "companyName": "string (optional)"
}

Response:

{
  "success": true,
  "data": {
    "analysisId": "uuid",
    "compatibilityScore": 85.5,
    "salaryRange": {
      "min": 2200000,
      "max": 2500000
    },
    "companyFitScore": 78,
    "parsedSkills": ["Python", "React", "AWS"],
    "yearsExperience": 5
  }
}

get-analyses

Retrieves user's analysis history.

Response:

{
  "success": true,
  "data": [
    {
      "id": "uuid",
      "job_title": "Senior Software Engineer",
      "company_name": "Tech Corp",
      "compatibility_score": 85.5,
      "predicted_salary_min": 2200000,
      "predicted_salary_max": 2500000,
      "company_fit_score": 78,
      "created_at": "2025-10-11T..."
    }
  ]
}

Security

  • Row Level Security (RLS) enabled on all tables
  • Users can only access their own data
  • Secure authentication via Supabase
  • Environment variables for sensitive data
  • CORS properly configured

Future Enhancements

  • Real-time job scraping from job boards
  • Enhanced NLP using transformer models (BERT, GPT)
  • Resume optimization suggestions
  • Interview preparation tips
  • Job application tracking
  • Premium subscription tiers
  • Email notifications for matching jobs
  • Mobile app version

License

MIT License

Contact

For questions or support, please open an issue in the repository.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors