nathanfox/resume-as-code — explained in plain English
Analysis updated 2026-05-18
Maintain resume content once in shared partial files and reuse it across multiple tailored variants.
Generate a new job-specific resume by writing just a headline, summary, and recipe file.
Build finished resumes as Markdown, HTML, PDF, and DOCX with a single shell script.
Track which resume version and commit was sent to each employer for later reproduction.
| nathanfox/resume-as-code | ai-engineer-skool/zen-agentic-engineer-config | ali-expandings/mactune | |
|---|---|---|---|
| Stars | 16 | 16 | 16 |
| Language | Shell | Shell | Shell |
| Setup difficulty | easy | easy | easy |
| Complexity | 2/5 | 2/5 | 1/5 |
| Audience | vibe coder | developer | general |
Figures from each repo's GitHub metadata at analysis time.
Requires pandoc and Google Chrome installed locally to build PDF and DOCX output.
Resume as Code is a template for managing a resume the way developers manage source code, and it is meant to be maintained with the help of an AI coding agent such as Claude Code. Instead of keeping one big resume document, the content lives in small Markdown files called partials, one per section or one per job role. A separate recipe file lists which partials to include, in what order, for a given version of the resume. One build script then turns each recipe into a finished Markdown file, an HTML page, a PDF, and a Word document. The main benefit of this setup is that editing a single partial updates every resume variant that uses it, so accomplishments and wording never drift apart between versions. To create a new tailored resume for a specific job posting, a person writes three small files: a headline, a summary, and a recipe listing which partials to pull in and in what order, rather than copying and editing an entire document from scratch. The same job role can even have two different opening framings, such as a general version and a manager-focused version, while sharing the same underlying accomplishments text. Building a resume requires the pandoc document converter and Google Chrome, since PDFs are produced by converting Markdown to HTML and then printing that HTML with a headless Chrome instance. After a build finishes, the script reports each PDF's page count, warns if any resume goes over a configurable page limit, and flags any partial files that are not referenced by any recipe. The repository ships with three example variants already set up: a general, ATS-friendly version for standard online applications, a leadership-focused version for management roles, and a portfolio-focused version that highlights writing and open source work for direct outreach. The project also tracks which resume version and commit was sent to which employer in a log file, so an applicant can check out that exact commit later and rebuild the exact document they originally submitted. A CLAUDE.md file documents the project's conventions so that an AI agent reads them at the start of every session, and the recommended habit is to record any correction given to the agent back into that file. The project is released under the MIT license.
A template that manages a resume as small reusable Markdown files, built with an AI coding agent, so one edit updates every tailored version.
Mainly Shell. The stack also includes Shell, Markdown, Pandoc.
Use freely for any purpose, including commercial use, as long as you keep the copyright notice.
Setup difficulty is rated easy, with roughly 30min to a first successful run.
Mainly vibe coder.
This repo across BitVibe Labs
double-check against the repo, no cap.