Still naming it like CV_ElonMusk_Facebook_final_v2.pdf? Just focus on your work experiences, mark it down, and let cac do the rest. That’s the idea behind CV as Code.
Write your CV as code and render it as PDF or HTML. Keep your content in version control, choose a theme, and rebuild consistently.
- Author in Markdown, or use JSON, YAML, and TOML.
- Import and export the supported JSON Resume subset.
- Check content and format source files without an LLM.
- Customize PDF layouts with reusable themes.
⭐ Your star can help make Code a CV better
Install cac on macOS or Linux:
brew install voxvanhieu/tap/code-a-cvOther installations
With Node.js 24 or newer, install on macOS, Linux, or Windows:
npm install -g @voxvanhieu/code-a-cv@latestWinget installation will be available in a future release. For now, download cac-x86_64-pc-windows-msvc.zip from the latest release, extract cac.exe, and add its directory to PATH.
The Homebrew command above also works on Linux. You can also build cac from source.
Install Rust 1.92 or newer, then run:
git clone https://github.com/voxvanhieu/code-a-cv.git
cd code-a-cv
cargo install --path crates/cac --lockedCreate a CV:
mkdir my-cv
cd my-cv
cac initEdit the generated cv.md, then build your PDF:
cac buildOpen offering/cv.pdf. This is your carefully prepared offering to the hiring gods.
Continue with the usage guide
for authoring, settings, and output options.
| Task | Command | Guide |
|---|---|---|
| Start or import a CV | cac init |
Getting started |
| Check content | cac check cv.md |
Content checks |
| Format the source in place | cac fmt |
Formatting |
| Render PDF or HTML | cac build |
Building and settings |
| Convert source formats | cac convert cv.md --to json |
Conversion |
See FieldMark syntax for headings and optional fields, and example projects for complete CVs and rendered results.
The classic theme is included. Follow using themes
to find, install, and select another design.
To create your own, use cac theme init, cac theme test, and cac theme pack.
The theme contribution guide explains the workflow;
the shared theme contract defines the
rendering requirements.
See the development guide for setup, architecture, testing, pull requests, and releases.
- More themes
- Rebuild automatically when files change
- Create job-specific CV versions with tags
- Fit a CV to a page limit
- Check the rendered PDF for missing content
- WebAssembly support
- Stunning local Web UI with Tauri
- VS Code extension
Code a CV is available under the MIT License.