Back to Scroll Journey
Resume Skill Match

Resume Skill Match

MindHatch: Bridge the Gap Between Talent and Roles >MindHatch is an intelligent resume-matching engine designed to automate skill gap analysis. By combining OCR technology with vector embeddings, the platform parses multi-format documents (PDF, DocX) to extract and match candidate skills with high precision. It features a sleek, responsive dashboard and robust data handling via TanStack Query and Upstash Redis.

Launch Demo Source

Detailed Scope Specifications

1. System Architecture

  • Architecture Pattern: Modern Monolith with Next.js App Router.
  • Runtime: Node.js 20+ / Edge Runtime support.
  • Concurrency Handling: Utilizes Upstash QStash for background task orchestration and Redis for state caching.
  • Type Safety: End-to-end type safety with TypeScript and Zod schema validation.

2. Feature Specifications

A. Multi-Format Document Processing

  • Engines:
  • PDF: Text layer extraction via pdf-parse.
  • Word (DocX): Native XML parsing via mammoth to preserve document structure.
  • Images: Optical Character Recognition (OCR) powered by Tesseract.js for PNG/JPG resumes.
  • Excel: Data extraction via exceljs.
  • Pipeline: Automatic file type detection → Buffer stream processing → Raw text normalization.

B. AI-Driven Analysis Engine

  • On-Device Embeddings: Uses @xenova/transformers to run feature-extraction models locally in the browser/server environment. This allows for semantic similarity matching without external API costs (OpenAI-free).
  • Skill Taxonomy: A proprietary skill-taxonomy.ts library that handles:
  • Alias Matching: Normalizes variations (e.g., "React.js", "ReactJS", "React" all map to "React").
  • Canonical Mapping: Categorizes extracted signals into standard industry skill sets.
  • Scoring Logic:
  • Technical Score: Ratio of matched skills vs. job requirements.
  • Semantic Score: Vector distance between the resume embedding and the job description embedding.
  • Experience Score: Regex-based extraction of "Years of Experience" signals.

C. Dynamic Recruitment Intelligence

  • Readiness Assessment: Categorizes candidates into Ready, Review, or Watchlist based on a weighted composite score.
  • Gap Analysis: Automatically identifies the "Top Gap" (most critical missing skill) based on the target role.
  • Automated Interview Planning: Generates contextual interview questions based on the candidate's specific skill overlaps and deficiencies.
  • Audit Trail: A transparent log of the analysis steps (e.g., "Normalized 15 skill signals," "Computed embedding similarity").

D. UI/UX & Data Visualization

  • Interactive Dashboard: Real-time feedback using Zustand for state management (via ui-store.ts).
  • Visual Analytics: Radar/Bar charts powered by Recharts to visualize Technical vs. Experience vs. Semantic scores.
  • Accessibility: Accessible UI components built on Radix UI primitives and Tailwind CSS 4.0.

3. Security & Infrastructure

  • Authentication: NextAuth.js v5 with Role-Based Access Control (RBAC) implemented in rbac.ts.
  • Database: Prisma ORM with a focus on relational integrity; easily switchable between SQLite (dev) and PostgreSQL/MySQL (prod).
  • Environment Validation: Strict environment variable checking via env.ts to prevent runtime failures.
  • Observability: Integrated Sentry for error tracking and performance monitoring.

4. Technical Performance

  • Zero-API Embeddings: By using Xenova, the system generates embeddings locally, ensuring data privacy and $0 inference costs.
  • Optimized Styling: Tailwind 4.0 "Engine-First" approach for minimal CSS bundle sizes and ultra-fast builds.
  • Post-processing: Uses bcryptjs for secure password storage and zod for 100% reliable API payload validation.

Module Stack

Next.js 16TypeScriptReact 19PrismaSQLiteNextAuth.js(v5 Beta)Upstash RedisTailwind CSSRadix UIZustandTanStackImageKitSentryZod

Timestamp

Released: May 2026