Serving multiple #CALIcon15 presentations with reveal.js

I have 4 sessions to present at CALICon15 this year and that means a lot of slides. Over the past few years I’ve tried a number of different approaches to putting together presentations including using outlines, wikis, AsciiDoc with deck.js, even plain old web pages. This year I’m giving reveal.js a try.

Reveal.js is a framework for easily creating beautiful presentations using HTML. It includes a lot of really handy features including speaker notes and a multiplexing plugin that allows viewers to follow a guided version of the presentation. The full installation gives me a nice node.js infrastructure that serves the slides and all I need to do is write an HTML file for each presentation.

Of course the basic installation instruction show you how to grab the code, then create and serve a single presentation. Even though I’m using git for versioning, I didn’t want to keep up 4 separate repos or even branches of code. I want to have all the HTML for the presentations in a single directory, in a single repo. I needed to figure out how to serve up multiple presentations from a single reveal.js installation.

It turns out there is a quick way to do this. I copied the included index.html to sample.html, for future reference and edited index.html into a single slide that links to 4 other html files. Each of the other files contains one presentation. This gives me a single code base for all the presentations and easy access to all of the features of reveal.js.

My presentations for CALIcon15
My presentations for CALIcon15

For my next step I’m going to give the multiplexing feature a try so folks can follow along. I think that there a lot of potential here for law schools to make use of this sort of tech in the classroom. Fast presentations that are shared directly with students would be something worth looking into.