Upload your resume once. Tailor it to any job in minutes.
Resume Tweak removes the per-application resume rewrite. Users upload a resume once — PDFs parsed with @firecrawl/pdf-inspector, DOCX with mammoth — into a versioned base-resume library with structured sections. Job descriptions go into a JD library. A tailor run combines base resume + JD + a reusable tailor template through an OpenRouter LLM and produces an editable draft, with tweak helpers and draft history so every application starts from tailored, not blank.
The backend is Convex: typed schema over resumes, baseResumes, sections, jds, tailorTemplates, tweak runs and resume/tweak drafts, with qwen3-embedding-8b vectors for retrieval and @convex-dev/r2 presigned uploads to a private bucket. Auth is Better Auth (SvelteKit handler + sveltekitCookies + Convex plugin) with convex-svelte reactive queries on the client. Deploys to Cloudflare Workers via adapter-cloudflare.
Key Features
One-Time Upload & Parse
PDF and DOCX resumes parsed into structured sections once, stored as versioned base resumes — never re-upload for a new application.
JD Library
Save job descriptions once, reuse across tailor runs. Paste any posting and target it in minutes.
AI Tailor Runs
Base resume + JD + reusable tailor template through an OpenRouter LLM into an editable draft, with tweak helpers and full draft history.
Tailor Templates
Reusable prompting templates encode tailoring strategy (tone, emphasis, ATS hygiene) so every run is consistent.
Retrieval & Uploads
Embedding vectors over resume content for retrieval; private R2 bucket with presigned uploads for source files and previews.
Auth & Edge Deploy
Better Auth sign-in with server-side session handling; ships to Cloudflare Workers with the Convex URL baked at build time.