Skip to content

monasri001/Resume-Parsing-and-Job-Matching-System

Repository files navigation

Resume Parsing and Job Matching System

production app : live https://syncmatrix.vercel.app

A smart, rule-based web application that dramatically simplifies the recruitment process by automatically parsing candidate resumes, extracting core professional attributes, and scoring them directly against specific Job Description (JD) requirements.

Built strictly with robust regex rules and structural parsing (no external LLMs or black-box AI dependencies), this system delivers fully deterministic, fast, and fully transparent matching results.

๐ŸŒŸ Key Features

  • Advanced Resume Parsing: Accurately extracts precise total experience metrics (years & months) along with core competencies directly from raw textual resume data.
  • Intelligent JD Extraction: Pulls precise Job Titles, Required Skills, Preferred Skills from Job Descriptions avoiding unrelated paragraphs.
  • Mathematical Eligibility Checking: Calculates true candidate experience normalized to total months and cross-references them against Minimum Required Experience parameters of the target JD.
  • Sample JD Engine: Contains a robust, cyclable library of 15 fully-crafted Sample Job Descriptions built directly into the UI for rapid testing and demonstration.
  • Deterministic Scoring Engine: Provides absolute matching percentages between the user's skillset and the explicitly stated requirement of the Job Description.

๐Ÿ“ธ Application Screenshots

Dashboard & Sample JD Loader

image

Match Results & Analytics

image

Detailed Tracking

image

๐Ÿš€ Tech Stack

๐Ÿ› ๏ธ Local Development Setup

To run this project locally, ensure you have Node.js installed on your machine.

  1. Clone the repository ```bash git clone https://github.com/monasri001/Resume-Parsing-and-Job-Matching-System.git cd Resume-Parsing-and-Job-Matching-System ```

  2. Install dependencies ```bash npm install ```

  3. Start the development server ```bash npm run dev ```

  4. Access the application Navigate to `http://localhost:8080\` (or the port specified by Vite) in your local web browser.


๐Ÿง  System Architecture Overview

Parsing Engine (`src/utils`)

  • `jdParser.ts`: Responsible for analyzing JD text using complex Regex rulesets designed to reliably extract exact Job Titles, Minimum Experience Requirements, and Categorized Skills despite highly variant input formats.
  • `resumeParser.ts`: Isolates the "Work Experience" section of uploaded resumes, parses date string ranges (e.g., Jan 2026 - Present), and aggressively calculates the exact candidate's overall lifespan in the industry utilizing strict Number standards.
  • `skillDictionary.ts`: Maintains an active hardcoded token list of current technologies, platforms, soft skills, and programming languages to aggressively identify within both inputs.
  • `matchingService.ts`: Cross-references the normalized Candidate object with the JD object, enforcing eligibility blocking if the candidate's exact computed months falls beneath the required JD metric, generating an absolute MatchResult.

About

Check out the website, Upload and get result ๐Ÿ‘‡

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages