Most resume tools will stretch you to fit any posting. Paste a nursing job next to a warehouse resume and you get something that sort of reads like a nurse. Resume Rerun checks first. It reads the posting and your resume, and if it's a bad match it says so and stops: "Skip this one", with the reason.
When I posted about it, that's what people replied about. Not the PDF. The no.
Verdict first, document second
You paste or upload your resume (PDF, Word or text, read in your browser) and paste the job description. The engine returns a fit verdict before it writes anything. A strong fit goes on to the rewrite. A pass stops there, and it doesn't use up one of your runs.
On a real fit you get a one-page, single-column PDF that applicant tracking systems can read, plus an optional cover letter and an interview prep sheet for the round you're facing. Every job you check lands in a small tracker table on your device that downloads as a spreadsheet.
The rules are the product
It uses an AI model, so the hard part was keeping it from making things up. The prompt is mostly a long list of things it isn't allowed to do:
- No skill, title, employer, date or number that isn't already on the resume.
- "Assisted" never turns into "led".
- A stated level stays exact. "Intermediate English" doesn't become "bilingual".
- A years-of-experience claim gets checked against the resume's own dates. If it's overstated, the number goes.
- Contact details are copied character for character. My favourite line in the whole prompt explains why: a padded phone number dials a stranger.
LaTeX on a serverless function
The engine writes LaTeX, and a Vercel function compiles it to PDF with a bundled Tectonic binary. No Overleaf, no manual step. The build pre-warms Tectonic's package cache into the bundle so the first compile isn't slow.
One page is a hard rule, so there's a repair loop. If the PDF spills onto a second page, it compresses and recompiles, and it keeps a pass if the content got shorter, even when it's still two pages. My first version only kept a pass if the page count dropped, which threw away real progress.
Small things I learned the hard way
- Vercel kills a function at its time limit with no warning, so the browser just sees a dropped connection. Two testers got a "connection dropped" message on perfectly fine connections. Now my own timer fires a few seconds earlier, and a slow run ends with an honest message instead of a mystery.
- The SDK retries timeouts by default, so a 47-second timeout can quietly become two minutes. I turned retries off so a deadline is actually a deadline.
- The free preview has no sign-up, so it's gated with a small proof-of-work puzzle and a daily cap.
There are no accounts. Your resume is used for the run and then thrown away.
Try it
It's free during early access and US only for now. Three free runs, no sign-up: https://resumererun.app
It's one of a handful of small sites I make after hours. The rest live at https://culdesac.site.
What's the most stretched-to-fit resume you've ever sent?
AI-assisted: drafted with help from an AI assistant.