Bilingual (de/en), YAML-driven CV generation with three renderers: modern, tabular, and ats.
- Single source of truth in
template/cv.yaml. - Three templates selected via
meta.template:modern: themed layouts viameta.theme.tabular: DIN 5008-style label/value layout with optionalmeta.accent_color.ats: linear, parser-friendly layout for Applicant Tracking Systems.
- Built-in theme registry with 14 modern themes:
sidebar-classic,sidebar-right,top-header,timeline,executive,compact,accent-band,dark,nordic,newspaper,minimal,neon,academic,folio. - Bilingual field handling with fallback between language keys (
de/en) usingloc()andloc-list(). - Optional per-token color overrides through
meta.colors(accent,sidebar-bg,page-bg,text-main,text-muted,text-light,on-dark,on-dark-dim,row-alt,border).
- Typst CLI
0.11or newer. - Recommended fonts (used by templates/palettes):
- body fallback:
Libertinus Serif,Georgia,Times New Roman - ATS font order:
Times New Roman,Libertinus Serif,Georgia
- body fallback:
- Clone the repository.
- Enter the project directory.
- Compile once to validate setup:
typst compile --root . template/main.typThis generates template/main.pdf.
All configuration is in template/cv.yaml.
- There is currently no
.env.exampleand no required environment variable setup. - Main
metakeys:template:modern|tabular|ats(default intemplate/main.typ:modern)language:de|en(default intemplate/main.typ:de)theme: modern themes only (default insrc/modern.typ:sidebar-classic)accent_color: tabular accent color (default insrc/tabular.typ:"#2563EB")colors: optional palette token overrides for modern themes
Detailed references:
template/main.typ imports ../lib.typ, so --root . should point to the repository root.
| Command | Arguments | Description |
|---|---|---|
typst compile |
--root . template/main.typ [output.pdf] |
Build PDF once |
typst watch |
--root . template/main.typ [output.pdf] |
Rebuild automatically on changes |
lib.typ exports:
render-modernrender-tabularrender-ats
Compile with current template/cv.yaml:
typst compile --root . template/main.typLive preview while editing:
typst watch --root . template/main.typSwitch to ATS output in template/cv.yaml:
meta:
template: ats
language: enSwitch to tabular with custom accent:
meta:
template: tabular
language: de
accent_color: "#1E3A5F"Use a modern theme and override specific colors:
meta:
template: modern
theme: folio
colors:
accent: "#6D597A"
page-bg: "#FFFCFA"See ./CONTRIBUTING.md.
MIT (license = "MIT" in typst.toml). See ./docs/LICENSE.md.