This project is meant to automatically build my resume and deploy it online as a PDF. You can use it as you want to build your own.
The idea is, that you define your resume in a structured format (.json
) and a script (.gen_cv.py
) generates a .tex
file for you.
Afterward, you can build it, e.g. to PDF, as usual using latexmk.
An example is available at short.json, that contains four sections and three different styles. The available template is based on Jake's Resume.
The workflow pdf.yml automatically builds the PDF(s) and deploys them to github pages. An example is available at marcel.to/cv/short.pdf.
- Create and activate a virtual-env.
python -m venv .venv source .venv/bin/activate
- Install dependencies.
pip install -r requirements.txt
- Run the script to generate
.tex
files. Additionally, a build script is available atgen_tex.sh
.python gen_cv.py data/short.json templates/jakes_resume.tex.jinja2 short.tex
- Build the
.pdf
file. A build script is available atbuild_pdf.sh
.latexmk -interaction=nonstopmode -file-line-error -pdf -halt-on-error -shell-escape -outdir=. short.tex
-
Build the image.
docker build --tag "localhost/latex-full:latest" .
-
Build the
.tex
file (see previous section).python gen_cv.py data/short.json templates/jakes_resume.tex.jinja2 short.tex
-
Build the
.pdf
file (SOURCE
is the local folder whereshort.tex
is located).# docker docker run --rm -v SOURCE:TARGET localhost/latex-full:latest buildpdf SOURCE DEST # podman podman run --rm --user=ubuntu \ --userns=keep-id:uid=1000,gid=1000 \ -v "$(pwd)"/SOURCE/:/mnt/cv:z localhost/latex-full:latest \ buildpdf /mnt/cv /mnt/cv