Part two of two on single sourcing content, this time covering my CV, which starts as YAML and ends up as HTML, PDF, and even a Word doc.
As I mentioned in my previous post, my blog is often both a place to throw ideas out into the world, and a place to mess around with screwy ideas, and one of those ideas I’ve been messing around with is using Jekyll’s abilities as a static site generator to produce multiple outputs from a single source.
The first experiment in this area involved my cookbook, wherein I took a bunch of individual markdown files and crammed them together into something that pandoc can use to generate PDF and even EPUB outputs.
My second experiment in this area was with my CV. The challenge with something like a CV is that the layout requirements are pretty complex and don’t fit well with a basic template-and-markdown model. As a result, I ended up having to take a less orthodox approach to this project.Continue reading...
Part one of two on single sourcing content to produce multiple attractive outputs. In this case, a write-up about the creation of my personal cookbook!
One of the benefits of using a static site generator (in my case Jekyll) to build this website is that all the underlying content is stored in simple text files. Most of the page content itself is just markdown files with a YAML header block. The page layout is simple HTML templates using liquid macros. Formatting is SASS that’s transformed into vanilla CSS.
This has a few of benefits. First, the site is future-proofed–plain text means I can move to a different engine any time I want, as the content is stored in a format that’s easy to extract and transform. Second, the ecosystem of tools to handle text files generally, and YAML and markdown specifically, is enormous, which means I can lean on all that existing infrastructure to do interesting things.
In this post I’ll cover the first of two examples where I’ve taken advantage of these benefits to produce, not just this website, but beautiful PDFs, ebooks, and even Word documents, from the same source content.Continue reading...