About
March 31, 2021 ยท View on GitHub
This repo contains the source I use to automatically generate my curriculum vitae as a webpage and PDF from YAML and BibTeX input. Inspired from Brandon Amos' webpage.
generate.py reads from cv.yaml and publications and outputs LaTeX and Markdown by using Jinja templates.
Building and running
This requires a Python 3 installation,
and the hashbang of generate.py assumes an executable named
python3 is available on the path.
Dependencies are included in requirements.txt and can be installed
using pip with pip3 install -r requirements.txt.
On Mac or Linux, make will call generate.py and
build the LaTeX documents with latexmk and biber.
The Makefile will also:
- Stage to my website with
make stage, - Start a local jekyll server of my website with updated
documents with
make jekyll, and - Push updated documents to my website with
make push.
What to modify
Change the content in cv.yaml.
You should also look through the template files to make sure there isn't any
special-case code that needs to be modified.
The Makefile can also start a Jekyll server and push the
new documents to another repository.
To use the Jekyll integration,
review the BLOG_DIR variable and the jekyll and push targets.
Warnings
- Strings in
cv.yamlshould be LaTeX (though, the actual LaTeX formatting should be in the left in the templates as much as possible). - If you do include any new LaTeX commands, make sure that one of the
REPLACEMENTSingenerate.pyconverts them properly. - The LaTeX templates use modified Jinja delimiters to avoid overlaps with
normal LaTeX. See
generate.pyfor details.
Licensing
This work is distributed under the MIT license (LICENSE-bamos.mit)
with portions copyright Ellis Michael from
emichael/resume.
Ellis' portions are also distributed under the MIT license
(LICENSE-emichael.mit) and include
a re-write of generate.py and template restructuring.