A Road to the Maintainable CV
I feel like updating one’s CV is a dreaded moment for many.
- Will the template that I use survive an update, or will its layout require a complete makeover?
- Do I want to put up with updating my Word or Google Doc?
- Will this minor change in LaTeX take ages or just a decade?
After going through Word and LaTeX, I settled for a better alternative: HTML.
Going Web-First
Now, mind you, HTML is not necessarily literally just HTML. I am currently recreating my CV with Astro. Astro can build a static page but allows using all the wonders such as JSX, components, or TailwindCSS for the development. I used Astro to build my current CV. Likely, I will shed some more light on Astro in a future post.
However, if you want something simpler, then plain HTML and CSS will do just fine! I built the previous version of my CV using only HTML and CSS. You can still view it at old.cv.tymek.dev.
But what about PDF? I need one to submit it in various forms!
If you checked out my CV, then you might have noticed that I do have a PDF version. That PDF is generated straight from the webpage!
Umm… how?
Have you ever heard of a print option called “Save to PDF”? Now you have. Turning a webpage into a PDF is surprisingly easy!
I created a web-based CV, but the layout is messed up in the print preview!
Let me introduce you to CSS media query @media print
and print:
modifier
in Tailwind. Both of these allow fine-tuning layout for print.
For example, if you support dark mode, the print should stay the same regardless
of the active theme. In Tailwind you would add something like
dark:print:text-black
to have black-on-white text in printing.
Additionally, there are CSS rules such as break-before
. These allow
controlling page breaks. Of course, this requires picking the right breakpoint
and checking if it still makes sense when you update your CV.
There is a caveat, though. The print style slightly differs between browsers. However, I don’t think that’s a real issue. Likely, you are the one to generate the PDF, so that’s something to keep in mind while doing so. If you would like to make a PDF copy available on your web version, then you could, like me, generate the PDF on your end and provide it as a static asset.
Okay, but how do I host it?
Now you are looking for excuses, right? You can effortlessly do so with SourceHut pages, GitHub pages, or Netlify1. These are free of charge and provide you with a subdomain if you don’t have one of your own.
Summary
Go now! Make your own web-based CV. Unless you already have one. In that case: why haven’t you bragged about it to me yet…? :-)
Footnotes
-
Netlify is how I started out with my blog! My post about it: Hosting with Netlify. ↩︎