Novoresume is a form that fills a designed page: a few templates, color themes, fonts, a matching cover letter and a PDF with a real text layer. An agent builds the personal version in a sitting with HTML and CSS rendered by Playwright, and the 'fit to one page' problem is the only fiddly part. What you don't get is the volume of designer work: 74 color themes, creative backgrounds and the example library. For one person who needs one or two good-looking layouts, that is rarely missed.
Before you buildNovoresume Basic is free for a single resume of up to one page with predefined layouts. If one page is enough, you may not need to pay at all.
Build me a one-page resume and cover letter designer to replace Novoresume. Requirements: - Node.js 22 + TypeScript: a Fastify server and a React UI built with Vite. `npm start` serves http://localhost:5250. - Storage: better-sqlite3 in ./data/docs.db: documents (type resume or cover letter, title, language, content as JSON, theme settings) with duplicate-as-new-version. Content blocks: header, summary, experience, education, skills, languages, interests and one custom section. - Layout: two templates (single column and sidebar) in HTML and CSS, with CSS variables for 8 color themes, four open-licence fonts bundled in ./fonts (Inter, Lato, Source Serif 4, Merriweather) and a size scale; sections reorder by drag and drop and hide with a toggle. An optional photo, square or round, appears in the sidebar template only. - Page fit: A4 or US Letter; the preview marks page breaks. A "fit to one page" button tightens spacing in three steps, then names the section that still overflows. Never go below 9 pt. - Export: PDF through Playwright `page.pdf()` with selectable text and the document title set. A test parses it with `pdf-parse` and asserts every bullet is in the text layer. PDF only. - Text check in code, shown beside the preview: images inside text blocks, tables, missing standard headings, text under 9 pt and mixed date formats. It is a lint, not an ATS verdict. - Cover letter: pick a resume, paste a job post, and the LLM drafts 250 words in the same theme using only facts from the resume; regenerate one paragraph at a time. A second button rewrites one bullet as an achievement, shown as a diff to accept or reject. - LLM from .env: ANTHROPIC_API_KEY, OPENAI_API_KEY or OLLAMA_URL, used only for the two actions above. Single user. No accounts, no telemetry, local-first. - Out of scope: dozens of themes, backgrounds, a job matcher, a salary calculator, share links. - README: setup, how to add a font, and backups (copy ./data and ./fonts).
Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own Novoresume.
Add an importer to the resume designer in this folder. Requirements: - Accept a PDF (`pdf-parse`) or pasted text and extract plain text. - Ask the configured LLM for the content blocks as JSON, validate with `zod`, retry once on invalid output, and show the parsed blocks beside the original text before saving. - Flag any date or number in the result that does not appear in the source text. - Nothing is saved until I accept; lines it could not place are listed. - Update the README with what is sent to the LLM.
Add a template to the resume designer in this folder. Requirements: - A two-column layout with a vertical timeline for experience, built in HTML and CSS with the same CSS variables, fonts and themes as the existing templates. - It must pass the existing text checks and the fit-to-one-page button, and the PDF text layer test must still pass. - Add a screenshot test per template with Playwright and store the images in ./tests/shots. - Update the README with how to add more templates.
Add translated versions to the resume designer in this folder. Requirements: - From a document, create a linked copy in another language: the LLM translates the text fields, and dates, names, numbers and company names are copied unchanged. - Show both versions side by side, mark fields edited since the translation, and offer to re-translate only those. - The language code is stored with the document and set on the PDF. - Update the README.
Most people want a good-looking resume finished in an afternoon, not a design project. Novoresume sells that layout work, and its pay-once passes don't renew, so a job seeker can spend one month's price and stop.
Estimate · Everything runs on your machine; a cover letter costs cents through an API, or nothing with a local model. The build is token usage on your agent plan.
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Basic | $0 | $0 | One version, a resume of up to 1 page, predefined layouts, 3 fonts, 30 color themes, no cover letter. |
| Premium, 1 month | $24.68 | — | Multiple versions, no branding, resumes up to 10 pages, custom layouts, a matching cover letter, 12 fonts, 74 color themes and specialized sections. |
| Premium, 3 months | $18.70 | — | Same features as the one-month pass. |
| Premium, 12 months | — | $17.77 | Same features as the one-month pass. |
Basic is free: one resume version of up to one page, predefined layouts, three fonts and 30 color themes.
Yes. An AI coding agent such as Claude Code, Codex or Cursor can build a usable personal version in one session with the prompt on this page, running on your own machine.
About $24.68 a month on the Premium, 1 month plan, $296.16 a year (checked 2026-10-19).
74 color themes, creative backgrounds and rating styles designed by Novoresume; The AI assistant, ATS resume checker and Resume Job Matcher on its site; Photo styles, interest icons and specialized sections; Writing documents in several languages from one account; The 90+ industry resume examples to copy structure from. If any of those matter to you, keep paying.
Yes: Reactive Resume (open source), RenderCV (open source), Resume Matcher (open source).