Back to Projects
ActiveFeatured

Hireloom

Hireloom
Codestz/hireloomTypeScript 0

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

TypeScriptTanStack StartReact 19Dexie / IndexedDBTailwind v4Gemini NanopdfmakePWA

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.

Quote

Your resume should be a file you own — editable anywhere, private by default, yours forever.

E
Esteban EstradaCreator
At a glance
ShieldCheck0Servers your data touches
HardDrive100%On-device (IndexedDB)
FileCheckATSParse-safe PDF export
WifiOffPWAInstallable & offline

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

From blank canvas to ATS-safe PDF
1

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.

2

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.

3

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.

4

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.

Info

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

AreaWhat you get
EditorBlock canvas, inline editing, reorder, live preview, zoom
TemplatesSingle / two-column / header-band · fonts · density · accent color
AIInline improve / shorten / expand / grammar · summary · skills · cover letter · CV chat · tailor-to-JD
ATSDeterministic keyword match + gap analysis + score-lift tailoring
ImportAny résumé PDF (AI-structured) · LinkedIn "Save to PDF" · JSON Resume
ExportATS-safe PDF (embedded fonts) · JSON Resume
Data100% local (IndexedDB) · one-click backup / restore · installable offline PWA

Run it locally

hireloom

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.