maintaining a cv in markdown 1
What I wanted was a single source of truth for my CV, absolving me of any need to maintain both an online copy I can link to, and a copy in something docs-like that I can mail around as a PDF.
The solution as it currently stands is that I write my CV in markdown, here on a GitHub pages site, and also run a GitHub actions workflow that uses md-to-pdf
to render a PDF copy and commit it back to the repository.
For reference, the repository for this site is gilmoregrills/gilmoregrills.github.io.
rendering a pdf
You can reference the workflow on GitHub at .github/workflows/render-pdf.yml
but the basic process is:
- On a push to main that includes a change to any file other than what’s in
_renders/
. - Check out the repo containing this site.
- Use npm to install
md-to-pdf
,cat
the markdown file containing my CV and pipe it tomd-to-pdf
with a bunch of inline arguments 2. - Another pre-made action commits the rendered PDF back to the repo in the
_renders/
directory.
Every change to my markdown CV overwrites the previous PDF, so my latest CV is always available (for me) at _renders/robin-lightfoot-cv.pdf
for me to fetch and send when I need it.
Currently both the styling of this site and the rendered PDF aren’t very beautiful, so my next steps will be to start working on that a little. Helpfully, md-to-pdf
allows you to pass custom css to the cli & is pretty extensible, and this site uhh is a website so 😌✌️