Readme as résumé

Generating a résumé PDF from a GitHub with Eleventy

I have a history of spending too much time formatting my résumé. Until recently my résumé was a LaTeX document. LaTeX is great for researchers and for typesetting complex mathematical equations. As a simple text document editor, it’s horrible. The tools are huge and slow—MacTeX is a 1.3 GB download. And the PDFs generated by LaTeX aren’t very searchable; I noticed that text copied from my résumé PDF lacked spaces!

A sane person would probably just move their résumé to Pages or Google Docs. Not me! I wanted to keep my résumé in plaintext, and preferably Markdown. I also liked the professional-looking output of LaTeX, and wanted to replicate that.

What I came up with was a résumé generator built around a GitHub repo. The repo’s is my résumé. I can edit the Markdown from anywhere, even using GitHub’s web interface. A GitHub Action automates generating a PDF from the readme. The Markdown is served as a webpage using Eleventy, a simple CSS template is applied, and then the page is saved to a PDF using Puppeteer, a headless Chrome browser.

Résumé hosted as a local webpage

I think the PDF output looks great, and it’s far more customizable than the LaTeX template I used to use.

If you want to try this as your own résumé, all you have to do is click the “Use this template” button on and modify the file!