Why I built it
Every few years I update my résumé, and every few years I run into the same problems.
Most résumé builders require an account, store my data somewhere and eventually export a PDF. If I want to move to another tool, I'm usually back to copying and pasting everything.
I also tried paying for Standard Resume. Unfortunately, I hit a billing bug where I was charged three times but never received Pro access. To their credit, they eventually refunded everything, although it took a while through customer support. It wasn't the reason I built Rizzumé, but it did reinforce that I wanted a tool I completely owned.
To me, a résumé is structured data. The PDF is just one representation of it. I should be able to keep the source, move it between tools and generate whatever output I need.
Rizzumé is my attempt at building that.
What it does
- Local-first
- Built on JSON Resume
- Printable templates
- Browser-based PDF export
- Live preview
- Multiple résumé versions
- Import and export
- Deterministic résumé checks
- No accounts
- No backend
Why JSON Resume?
I didn't want another proprietary format. Everything in Rizzumé is stored as a standard JSON Resume document, which means your data remains portable. The application only adds a small meta.rizzume section for UI preferences like templates and résumé versions.
The goal is simple: if Rizzumé disappeared tomorrow, your résumé would still be usable.
Local-first
Once I chose JSON Resume, I realised I didn't need a backend.
Everything lives in localStorage through a Zustand store. There are no accounts to create, no authentication flow and no server storing your résumé.
Your data never leaves your browser.
Templates
Rizzumé currently includes 14 templates.
Each template is just a React component reading the same underlying JSON Resume data, so switching templates doesn't transform your résumé or duplicate data.
Pick a different template and the data stays exactly the same.
Resume checks
Instead of inventing an "ATS score", Rizzumé performs deterministic checks that can actually be explained.
Some examples:
- Missing contact information
- Empty sections
- Long bullet points
- Passive or first-person writing
- Missing quantified achievements
Every result links back to where it can be fixed.
Multiple résumé versions
Rather than maintaining separate files, Rizzumé lets you keep multiple versions together.
One master résumé.
Several tailored versions.
One backup file.
It makes applying for different roles much easier without duplicating everything.
Import and export
Export works in two ways.
- Standard JSON Resume
- Complete Rizzumé backup
Import detects the difference automatically, validates the file and restores the appropriate data.
That means you can move between devices without creating an account.
Welp?
Building Rizzumé reminded me how enjoyable small projects can be.
It started because I wanted a better résumé builder for myself. Along the way it became an excuse to explore local-first architecture, open standards and a few ideas around making résumé editing simpler.
🌐 Live Demo: https://rizzume.katpadi.ph
💻 GitHub: https://github.com/katpadi/rizzume
📄 JSON Resume: https://jsonresume.org