Rambling notes on HTML5-based slideshow tools

I can’t seem to write cohesively anymore, so I’ll just ruminate a bit and hope it’s not too dis-organized.


I recently been creating training materials for JavaScript and related stuff at work; mostly presentations1. For the last few years, I’ve tried to create my presentations in HTML: as a Linux user, I of course can’t use Powerpoint, and I loathe OpenLibre Office, so using it was never even an option.

Back in the day before HTMLized presentations were famous, Eric Meyer created a great tool called S5. I loved it — and still do, but it lacks the oomph of more recent tools (though I admit that I haven’t taken a look at it recently). Anyone who wants to investigate the current landscape should take a look at the Wikipedia article on Web-based slideshows.

Most of my recent presentations have been built using Landslide — a nifty little application that uses some Python magic to transform Markdown-formatted slides into great presentations. It is quite simple to create customized themes for it, with a bit of fiddling. It also has a nice ‘presenter notes’ mode that seems to have been inspired by Keynote. Overall, Landslide definitely is one of the best tools for the job right now.

Another tool that I’ve been investigating recently is deck.js — a more modular approach to creating HTML presentations. It exposes a great API, and has a nice extension system. In fact, one of the extensions, deck.js-codemirror incorporates CodeMirror’s excellent live code editing and syntax highlighting features into presentations: perfect for creating training materials for JavaScript!

The only issue I have with deck.js at present is that it requires me to write in HTML; do-able but I would much prefer writing presentations in plain text. Still, it’s a pretty interesting tool — the next few presentations I create will use it.


  1. Which we may put online sometime, let’s see.