A free, open-source CV template for developers (and anyone else looking for a job). Written in Typst using the modern-cv template, with a GitHub Actions workflow that auto-builds your CV to PDF, attaches it to a rolling GitHub Release, and publishes a live preview on GitHub Pages.
Tip: click the green Use this template button on GitHub to create your own copy of this repo. Then follow the steps below.
- A clean, single-page developer CV in PDF — no fiddling with Word margins.
- One source file (
cv.typ) — edit text, push, get a PDF. - Auto-built on every push:
https://<your-username>.github.io/<repo-name>/always shows the latest version. - A rolling
latestGitHub Release so anyone can download the PDF from a stable URL. - All fonts vendored — no internet required for builds.
- Click Use this template → Create a new repository.
- Edit
cv.typ— replace the placeholder content (Jordan Rivera, Lumen Labs, etc.) with your own. - Commit and push. GitHub Actions takes ~30 seconds to build and publish.
- Download from the latest release or view online at the Pages URL.
All content lives in cv.typ. Each role follows the same pattern:
#resume-entry(
title: "Company Name",
location: "Job Title",
date: "YYYY – YYYY",
description: "Team / product area",
)
#resume-item[
- Bullet point one — what you did and the impact.
- Bullet point two — quantify when you can.
]The author: (...) block at the top of cv.typ controls your name, contact info, and links (LinkedIn, GitHub, personal site). Update those first.
- Install Typst (one time):
brew install typst # macOS
# or see https://github.com/typst/typst#installation for other platforms- Compile or watch — fonts are vendored, no download needed:
make build # one-shot compile → CV.pdf
make watch # auto-recompile on every save- Open
CV.pdfin your editor or PDF viewer. Withmake watchrunning, it auto-refreshes within ~100 ms of each save.
Run make help to see all targets.
All required fonts are vendored under assets/fonts/ (~3.2 MB, all OFL-1.1 licensed). See assets/fonts/LICENSES.md for details.
After your first push, enable the auto-publish features.
- Open your repo on GitHub and click Settings (top right of the repo).
- In the left sidebar, click Pages (under "Code and automation").
- Under Build and deployment → Source, open the dropdown and select GitHub Actions. There's no save button — selecting it enables Pages.
- Still in Settings, click Actions → General in the left sidebar.
- Scroll to Workflow permissions, choose Read and write permissions, then click Save. (This lets the workflow create the rolling
latestGitHub Release.)
Once over, your CV will be live at https://<your-username>.github.io/<repo-name>/ and downloadable from the latest release. Every push to main after this republishes automatically.
The template files in this repo are MIT-licensed — use them however you like. The modern-cv Typst template and the bundled fonts have their own licenses; see their respective sources.