Hireloom

A private, local-first résumé builder with on-device AI. Build on a real canvas, tailor to any job, and export ATS-safe PDFs — entirely in your browser. No account, no servers.
Tech Stack
A résumé you actually own
Your résumé is the most personal professional document you have — and almost every tool that helps you build one wants the same thing in return: an account, an upload, your work history sitting on someone else's server, and a paywall the moment you want the PDF.
Hireloom is the opposite. It runs entirely in your browser. Your data lives in IndexedDB, the AI runs on your device, and the PDF is rendered client-side. There is no backend to leak, sell, or shut down.
Your resume should be a file you own — editable anywhere, private by default, yours forever.
”The problem
Maintaining a résumé in 2026 means handing your career history to a SaaS tool, then paying to get a PDF back out. Tailoring it to a job is worse — you paste private work history into a third-party LLM with no idea where it lands.
Both problems come from the same root cause: the app has a server. Remove the server and the privacy problem disappears by construction, not by policy.
How it works
LayoutTemplateBuild on a block canvas
A block-based editor with inline editing, drag-to-reorder, live preview, and real templates — single column, two-column, header band.
SparklesImprove with on-device AI
Chrome’s built-in Gemini Nano rewrites bullets, drafts summaries, mines skills, and lets you chat with your résumé — no key, no cloud, no telemetry.
TargetTailor to a job
A deterministic, on-device keyword match scores your CV against any job post, shows what’s missing, and one-click tailors your summary to lift the score.
FileDownExport ATS-safe
A true text layout (not a screenshot) — selectable, parse-safe, the same recipe behind a résumé that has passed every ATS thrown at it.
Private by architecture, not by promise
The key design decision: everything runs client-side. Résumés live in your browser's IndexedDB (via Dexie). The AI uses Chrome's built-in Prompt API (Gemini Nano) — and if you don't have on-device AI, you bring your own Gemini key, stored only in your browser. The engine is pluggable, so Anthropic and others are a single adapter away.
Don't want any AI? Editing, ATS keyword match, PDF/JSON export, and JSON/LinkedIn import all work with no AI at all. The AI is additive, never required.
”Features at a glance
| Area | What you get |
|---|---|
| Editor | Block canvas, inline editing, reorder, live preview, zoom |
| Templates | Single / two-column / header-band · fonts · density · accent color |
| AI | Inline improve / shorten / expand / grammar · summary · skills · cover letter · CV chat · tailor-to-JD |
| ATS | Deterministic keyword match + gap analysis + score-lift tailoring |
| Import | Any résumé PDF (AI-structured) · LinkedIn "Save to PDF" · JSON Resume |
| Export | ATS-safe PDF (embedded fonts) · JSON Resume |
| Data | 100% local (IndexedDB) · one-click backup / restore · installable offline PWA |
Run it locally
Built with
A declarative block model over the JSON Resume schema, rendered with TanStack Start (React 19 · Vite), TanStack Router & Query, Dexie/IndexedDB for storage, Tailwind CSS v4 for styling, Zod for validation, and pdfmake + pdf.js for true-text PDF in and out. Licensed AGPL-3.0 — free and open.
Status
Active and live at hireloom.codestz.dev. The roadmap leans into the pluggable AI engine (more providers), richer templates, and deeper ATS gap analysis.