A simple tool for generating good looking CV pdfs from vanilla markdown files
1.6K
A tool that uses pandoc to generate a good looking CV in .pdf and .html formats from a vanilla markdown file.
Supports working with multiple markdown files at the same time (if, for example, you need your CV in multiple languages), and doesn't depend on jekyll nor LaTeX.
Absolutely no dependencies if you use GitHub CI to build the resulting files!. Just put your resume markdown file under src/, commit and push. You'll find a zip file with the output files in the CI workflow summary page.
Create a markdown file under src/ - on build it will be used to generate the corresponding .pdf and .html files under output/
You can use src/sample.md for reference and output/sample.pdf to see what it generates. Most of it should be self-explanatory. Other than that:
title variable from the frontmatter gets set as the first h1 in the contentstyle variable in the front matter chooses the style to use (from the styles/ directory)h4 -> code used for time periods in the default style). Again, consult the samples to see how it fits together.You'll need to install pandoc and wkhtmltopdf, optionally lmodern to use the default font. Afterwards just run make!
on Linux:
sudo apt install pandoc lmodern wkhtmltopdf
make
open output/sample.pdf
To have the output files automatically regenerated when you edit the source files:
sudo apt install pandoc lmodern wkhtmltopdf inotify-tools
make watch
The latter is Linux only, to use the same workflow on Mac, use the Docker workflow below.
If you have docker installed, you can run
make docker
While the docker container is running, the src/ and the output/ directories are mounted to it and pdfs will be re-generated whenever the markdown files are edited.
Note: the watching for changes doesn't seem to be working on MacOS (at least when using Podman)
In this version you don't compile the docker image - you use the :latest pushed to docker hub
It also doesn't do the filesystem watch thing - it just compiles all the source files once.
make docker-simple
Check the bottom of src/sample.md for a hidden bonus feature 😉
Contributions welcome! Especially new styles and tweaks to the default style.
Create a directory under styles/ - the name of the directory will be the style name.
Any css files put in the directory will be included, in alphabetical order, in a resume compiled with that style.
.Makefile in the root directory?I left it as a reminder to never try to use hand-written Makefiles for anything non-trivial - it's not worth it.
Content type
Image
Digest
sha256:b4e44e4a5…
Size
355.5 MB
Last updated
6 months ago
docker pull nietaki/markdown-resume