Back to portfolio

Browser-only resume tailoring app

ATS Resume Tailor

Or try the lite demo built into this portfolio

ATS Resume Tailor — ATS Resume tab showing the generated LaTeX resume alongside ATS score, keyword match, and skills gauges
ATS Resume Tailor — Keyword Report tab listing job-description keywords, whether each is present in the resume, and where to place missing ones
ATS Resume Tailor — API Key Settings modal explaining the bring-your-own-key model across Gemini, Groq, NVIDIA NIM, and Kimi

ATS Resume Tailor — ATS Resume tab showing the generated LaTeX resume alongside ATS score, keyword match, and skills gauges

Overview

A bring-your-own-key app that tailors a resume to a job description: it extracts what the JD actually requires, scores the resume against it, and generates a keyword-optimized, ATS-friendly LaTeX resume — plus a cover letter, interview prep, and a LinkedIn About. A deterministic verification pass flags any generated metric that isn't traceable back to the source resume.

What it does

  • JD analysis extracts required/preferred skills, responsibilities, and ATS keywords from a pasted job description. Resume input supports PDF/DOCX/TXT upload — parsed entirely client-side via pdf.js and mammoth, never uploaded anywhere — or pasting directly.
  • Scores the resume across ATS score, keyword match, and experience/skill/responsibility match, then generates a tailored resume as clean, ATS-friendly LaTeX (or fills in your own .tex template), plus a keyword report, missing-skills report, interview prep, cover letter, and LinkedIn About — each grounded only in the resume you provide.
  • Multi-provider fallback tries Kimi, then Gemini, then Groq, then NVIDIA NIM — built after a real billing suspension on one provider mid-project, so no single provider outage blocks generation.
  • Runs entirely in the browser with no backend: visitors bring their own free API key, stored only in localStorage and sent directly to the provider. Verified by grepping the production bundle for key-shaped strings, not just asserted.

Tech stack

RReeaaccttVViitteeJJaavvaaSSccrriippttKKiimmiiGGeemmiinniiGGrrooqqNNVVIIDDIIAA  NNIIMM