Archit OS
~/projects/resumeai/README.md
← all projects
SaaS·Live

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
ResumeAI screenshot
5
AI providers (BYOK)
3
export formats
4
resume templates
⌘K
command palette

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

  1. Upload, paste or LinkedIn
  2. Parse to structure
  3. ATS score
  4. Tailor + cover letter
  5. Mock interview
  6. 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.

Built with

TypeScriptNext.jsReactTailwind CSSZustandSupabasePostgreSQLClaude APIGeminiOpenRouterNVIDIA NIMVercelNetlify