Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Programmatic generation of high-quality CVs using YAML, Pandoc, and LaTeX.
CV Boilerplate is a LaTeX boilerplate that turns a structured YAML file into a polished CV or résumé PDF using Pandoc as the converter. It decouples content from presentation: all your data lives in details.yml, the layout in template.tex, and a single build step produces output.pdf.
CV Boilerplate is a Pandoc-based LaTeX template created by mrzool that programmatically generates CVs. Input is a YAML file containing personal details, work experience, education, and settings; output is a typeset PDF via XeTeX. It requires Pandoc, a LaTeX distribution with the packages listed in the README, and compilation with the xelatex engine. The project is a modified version of Dario Taraborelli's cvtex template and is released under CC BY-SA 3.0.
details.yml stores name, address, email, experience, education, and settings; updating the CV means editing one plain-text file.template.tex uses $for(experience)$ loops and $experience.years$-style variables to iterate over structured lists, making repetitive sections trivial to render.fontspec; the default mainfont is Hoefler Text, and any installed font can be used.fontsize accepts 10pt, 11pt, or 12pt; lang sets the main language through polyglossia; geometry defines page margins with a string passed to the geometry package.make compiles the PDF; Windows users can fall back to the Pandoc command with --pdf-engine=xelatex.Developers and engineers who prefer writing in plain text and want to version-control their résumé will find the YAML pipeline natural. Academics who need a clean, typographically consistent CV without fiddling with LaTeX layout can just fill in the data. Job seekers who need to produce updated CVs frequently will benefit from the one-command make build. Automation enthusiasts can extend the workflow, as described in a linked article, to compile CVs automatically via GitLab CI.
details.yml in a gist or Git repository, then generate a PDF at any time.template.tex with LaTeX until the design matches your taste, and adjust mainfont, fontsize, geometry, and lang without touching content.First, fill details.yml with your personal data and settings. Then run make to compile, or use the Pandoc command shown in the README on Windows. Finally, tweak template.tex for custom styling; the template must be compiled with XeTeX.
