I've written about resuml twice already. Once when it was just a CLI, and once when it grew an MCP server so Claude Code could drive it from a chat. Both of those quietly assume you're fine installing a global npm package and living in a terminal. I am. Most people aren't, and honestly they shouldn't have to be just to fix their resume on a Sunday.
So now there's a hosted version at resuml.app. Same engine underneath, nothing to install, and the part I care about most: nothing you type ever leaves your browser.
What it actually is
It's the CLI's brain wrapped in a web page. You write your resume in YAML, or use the form editor if you'd rather not look at YAML at all, paste in a job description, and the ATS score updates while you type. Pick a theme from the 300 or so available. Export a PDF when it looks right. That's the whole thing.
One point I want to be loud about. There's no signup. No account. No analytics quietly tailing you around the site. Your resume lives in your browser's local storage and nowhere else. I don't run a database with your work history in it because I never wanted to be the guy responsible for one. Close the tab and your draft is still there when you come back. Clear your browser data and it's gone, and yeah, that part's on you. I made that trade on purpose.
The score is the whole point
Most "AI resume" tools do one of two annoying things. They either rewrite your resume into smooth, weightless mush, or they hand it to an LLM that grades it and cheerfully tells you it's wonderful. resuml does neither. The score runs on a fixed set of rules. Eleven checks, three buckets:
- Contact. Is the basic stuff there and actually parseable.
- Content. Summary length, at least two highlights per role, real verbs instead of passive filler, numbers that prove impact, and no sentences that start with the word I.
- Structure. Dates that line up, at least three skill groups, education that isn't half filled in.
You land in a band. 90 to 100 is excellent, 75 to 89 good, 60 to 74 needs work, under 60 is rough. Paste in a job description and the math tilts to 60% those general checks and 40% how well your wording matches the posting. Because none of it is an LLM guessing, the number won't budge unless the resume genuinely got better. You can't flatter it. To move the score you have to do the dull, real work: add the skills you actually have, turn "was responsible for" into a sentence with a verb and a number in it, fix the gap between two jobs.
The bit that's new even if you use the CLI
This didn't exist last time I wrote anything. resuml can pull job postings now, from a handful of free job boards, all at once, and rank them with that same scoring engine. So the question flips. It stops being "is my resume any good" and becomes "which of these openings is my resume already good for." Roles way outside your lane get capped so they don't sneak to the top, and there's a cutoff so you're not scrolling through junk. It's resuml jobs search on the command line, and the web app shows you the same thing.
Small change, but it turned out to matter. Nearly every resume tool tunes one document against one job at a time. This one points your document at a whole pile of jobs and tells you where to aim first.
Why bother with a web app at all
The plain truth is I kept telling friends to try resuml and then watching them hit npm install -g and quietly give up. The CLI and the MCP server are the right call if you live in a terminal or inside Claude Code. But "resume as code" is a nice idea that shouldn't make you set up a whole Node toolchain just to poke at it. The web app is the easy way in. Open a link, watch your resume restyle itself across 300 templates, get a score that isn't lying to you, leave. Same YAML, same engine, whichever door you walk in through.
Go try it at resuml.app. It's free to use right now.












