ResumeAI
An AI resume workspace you bring your own key to: score it, tailor it, practise the interview.
- Role
- Full-Stack AI Engineer
- Timeline
- Mar 2026 – Present
- Team
- Solo
- Status
- Live

The problem
Job seekers spend hours tailoring a resume for each application without knowing whether it matches what recruiters look for, and the tools are scattered across single-purpose sites that each want a subscription. Locking everything behind one paid AI provider is a real barrier, especially for students.
What it does
ATS scoring and analysis
Section-by-section scores, a recruiter-style verdict, missing keywords and concrete fixes.
Tailoring without inventing
Rewrites against a job description, and an AI coach proposes specific one-click edits grounded in what your resume actually says.
Cover letters and mock interviews
Cover letters from your resume and the target job in one pass, plus role-specific interview questions and an AI-debriefed mock interview.
LinkedIn import and exports
Pull a public profile or pasted text into a structured resume, then export Classic, Modern, Minimal or Executive templates as PDF, DOCX or LaTeX.
Share links and history
Read-only share links with optional passwords and a view counter, plus version history, job tracking and an analytics dashboard.
Bring your own key
Anthropic, OpenAI, Gemini, OpenRouter or NVIDIA NIM. Keys live in the browser’s sessionStorage only.
How it flows
- Upload, paste or LinkedIn
- Parse to structure
- ATS score
- Tailor + cover letter
- Mock interview
- Export or share
Problems solved
Every provider is different
ProblemEach AI provider has its own auth scheme, base URL and JSON quirks, and users should not need an account with one specific vendor.
SolutionA unified provider client with per-provider config, routed through the app’s own API routes to avoid browser CORS limits. A live test call validates each key.
Tailoring that does not lie
ProblemAI rewriting tends to invent experience to match a job description.
SolutionTailoring and the coach work from the content you supplied and propose specific, reviewable edits instead of free rewrites.
Sharing without exposing data
ProblemA resume carries personal contact details that should not be openly indexable.
SolutionShare links can be password-protected. Passwords are bcrypt-hashed in the database and checked through a SECURITY DEFINER function, with row-level security on the tables.