11Case study · AI recruitment platform

RecruitFlow: An AI Recruitment Platform with ATS Scoring

RecruitFlow is an AI recruitment platform that turns resumes into scores, summaries and hiring decisions for small and medium companies. I built it alone between March and May 2026, from the database to the marketing site, on Next.js 15, Supabase and Gemini 2.5 Flash. The source code is public on GitHub.

  • An ATS score out of 100 for every application
  • A fixed 5-factor rubric, with a fallback if the AI fails
  • Plans from free to NPR 499 a month
RecruitFlow AI recruitment platform shown on desktop and mobile

01The problem

The Problem with Reading Resumes by Hand

A small company’s recruiter can spend days reading resumes for one role. Recruiters at small and medium companies post a job, receive dozens of PDF resumes and read each one by hand.

Applicant tracking systems that score resumes exist, but they are priced for large companies.

RecruitFlow reads them first: every application gets a score out of 100 and a written summary, so the recruiter starts with the strongest candidates.

02The solution

What I Built: From Apply Link to Hiring Decision

Recruiters post a job and share a public apply link. Candidates upload a resume. RecruitFlow extracts the text, scores it against the job with Gemini on a fixed rubric, writes a four-paragraph summary, and shows the result in a page-flip resume viewer. Recruiters accept or reject, email candidates in bulk and schedule interviews.

I built it alone, from the database to the marketing site, including an admin panel for the platform owner with users, support tickets, upgrade requests and transactions. It is a complete SaaS product, with plans and billing.

RecruitFlow pricing: three plans in rupees for recruiters in Nepal, from a local run
Three plans, priced in rupees for recruiters in Nepal. Screens from a local run.

03Features

What RecruitFlow Does for Recruiters

Hiring, AI and the daily workflow in one place, with plans small companies can afford.

Hiring

  • Job posts with work mode, deadline, education, experience and job type
  • A public apply link for every job
  • Resume upload up to 10 MB in PDF, DOC or DOCX
  • Candidate CRM, accept or reject, bulk email

AI

  • ATS score out of 100 with a written summary
  • AI job description generator
  • AI shortlist of the top 5 candidates for each job
  • A chat assistant that answers questions about the candidate pool

Workflow

  • Interview calendar with conflict detection
  • Bulk PDF export of all resumes for a job
  • Real-time support chat

Plans

  • Essential: free, 1 job and 5 CVs
  • Pro: USD 6.99 or NPR 299 a month, 4 jobs and 30 CVs
  • Enterprise: USD 9.99 or NPR 499 a month, 10 jobs and 200 CVs
  • Prices shown in NPR for visitors in Nepal
RecruitFlow sign-in with email codes or Google, rate-limited on the server
Sign-in with email codes or Google, rate-limited on the server.

04Architecture

RecruitFlow Architecture and Tech Stack

RecruitFlow is a Next.js 15 application with Supabase for the database, authentication, file storage and real-time support chat. It uses three Supabase clients: one in the browser, one on the server with the user’s session, and an admin client used only inside server routes.

  1. Recruiter and candidateNext.js 15 App RouterPublic, signed-in and admin routes
  2. Backend30 API route handlersToken checks cached for 60 seconds
  3. DataSupabasePostgreSQL, Auth, Storage, Realtime
  4. AIGemini 2.5 FlashRule-based fallback if it fails

The RecruitFlow Tech Stack

Middleware caches token verification for 60 seconds to cut round trips to the auth server, and splits routes into public, signed-in and admin groups. The admin client never reaches the browser.

Framework
Next.js 15 App RouterReact 19Tailwind CSSFramer Motion
Backend
30 API route handlers
Data
Supabase: PostgreSQLAuth with Google OAuthStorageRealtime
AI
Google Gemini 2.5 Flash
Documents
pdfjs-dist for text extractionpdf-lib for merging
Email
Nodemailer over SMTPResend

05Engineering

Engineering Decisions Behind RecruitFlow

The three decisions that shaped RecruitFlow, and why I made them. Each one solves a problem a real user would hit.

01

A Fair, Explainable ATS Score

Gemini scores each resume on five fixed factors: skills 35 points, experience 25, job title 20, education 10 and achievements 10. The prompt forbids bonus points for famous company names, the temperature is kept low for consistency, and the result is clamped between 0 and 100.

02

A Fallback When the AI is Down

If the Gemini call fails, a local rule-based engine scores the resume instead. It first checks that the file is a resume at all, by looking for section headings, an email address and date ranges, so a recruiter never sees a confident score for a random PDF. Logic like this is what logic verification exists to test.

03

Rate Limits on Everything That Matters

Login, registration, one-time codes, password resets, application processing and the AI chat each have their own limit. One-time codes are generated with a secure random source and expire after two minutes. Eknas guards its public API with scoped keys and IP allowlists in the same spirit.

06Screens

RecruitFlow on a Phone

Candidates apply from their phones, so sign-up and pricing were designed for small screens first. Screens from a local run.

07Status

Where RecruitFlow Stands Today

RecruitFlow is complete as a product and its source code is public on GitHub. It is not hosted publicly at the moment, so the screens on this page come from a local run.

RecruitFlow

Complete, source on GitHub

It shows how I use AI inside business software: a fixed rubric instead of a vague prompt, a fallback when the model fails, and limits that keep costs predictable.

What I’d Do Next

  1. Host it publicly and open the free plan to recruiters in Nepal.
  2. Let recruiters change the weight of each of the five factors per job, within fixed limits.
  3. Check scores for bias by comparing results with names and photos hidden.

Related services

Need AI in Your Product?

These are the services behind this case study. Each page lists prices, timelines and how I work, and every starting price is on my services page.

Every project, with its stack and status side by side, are in my web development portfolio, and the person behind them is on my about page.

FAQ: RecruitFlow AI Recruitment

How RecruitFlow scores resumes, what it costs and how it was built.

Ask me on WhatsApp

What is RecruitFlow?

RecruitFlow is an AI recruitment platform for small and medium companies. Recruiters post a job and share a public apply link, candidates upload a resume, and RecruitFlow scores each application out of 100 against the job, writes a summary, and helps the recruiter shortlist, email and schedule interviews.

How Does RecruitFlow Score Resumes?

Gemini scores each resume on five fixed factors: skills 35 points, experience 25, job title 20, education 10 and achievements 10. The prompt forbids bonus points for famous company names, the temperature is kept low for consistency, and the final score is clamped between 0 and 100.

What Happens If the AI is Down?

A local rule-based engine scores the resume instead. It first checks that the file is a resume at all, by looking for section headings, an email address and date ranges, so a recruiter never sees a confident score for a random PDF and hiring never stops because a model is down.

How Much Does RecruitFlow Cost?

There are three plans. Essential is free with 1 job and 5 CVs. Pro costs USD 6.99 or NPR 299 a month for 4 jobs and 30 CVs, and Enterprise costs USD 9.99 or NPR 499 a month for 10 jobs and 200 CVs. Visitors in Nepal see prices in NPR.

Which Technologies is RecruitFlow Built With?

RecruitFlow uses the Next.js 15 App Router with React 19, Tailwind CSS and Framer Motion, and Supabase for PostgreSQL, authentication, storage and real-time chat. Gemini 2.5 Flash does the scoring, pdfjs-dist extracts resume text, pdf-lib merges PDFs, and email goes through Nodemailer or Resend.

Can You Add AI Features Like This to My Software?

Yes. I build AI features on Gemini and other LLM APIs inside business software, with fixed rubrics, fallbacks when the model fails and rate limits that keep costs predictable. Tell me the job you want AI to do, and see software development for how I quote it.

Planning a Product Like RecruitFlow?
I’ll Send a Fixed Quote.

Send a short note about your project and budget. I reply within one working day with questions or a first estimate.

Ujjwal RupakhetiReplies within one working day

What are you planning?

Opens WhatsApp with your message started.