At Electric Book Works, we’d been producing books with InDesign for years. InDesign is awesome, but it makes publishing simultaneously to print and digital formats a real pain. No matter how we set things up, we always ended up with separate master files: one for print, one for the ebook, and one for the website. And keeping those in sync over time was almost impossible.
We needed a way to instantly create PDF (for high-end, professional book publishing), epub and website editions of a book from a single master source. We needed great version control and cloud backup. We wanted to be able to edit from anywhere, in a way that is easy for non-technical people to learn.
And we didn’t want to be locked into any proprietary tools, whose price or availability could change at any time. We needed to use entirely open technologies to ensure our content was future-proof. And we didn’t want to develop any code that others had already developed.
We spent several years piecing together a solution, bit by bit. Eventually, we settled on a workflow that is (relatively) simple and powerful:
- We store a book’s master files in plain text, formatted as markdown.
- We turn that plain text into clean HTML instantly (using Jekyll).
- We apply different stylesheets to that HTML to get beautiful web versions, ebooks and print PDFs in minutes (using Sigil and PrinceXML).
- Everything is stored securely with state-of-the-art version-control (using GitHub and similar services).
Markdown is so simple that non-technical people can learn how to create and edit it in under an hour. They can even work directly on the master files online using Prose.
Jekyll is great at generating clean HTML in flexible ways, and has a big, active development community and committed project owners. Is also includes kramdown and Sass, which are critical to creating new book designs quickly.
While PrinceXML is proprietary software, it’s our favourite implementation of the open standards for CSS Paged Media.
There are several digital-first book-publishing systems around. Some are also based on markdown, like ours. For example:
PressBooks, which is built on Wordpress, is a superb, affordable service.
And if you’re a serious publishing outfit, have a look at O’Reilly Atlas.
For converting HTML/CSS to print PDF, we use PrinceXML, which is proprietary. Other alternatives, which we haven’t tested or don’t yet support all the page-layout features we need, include: