This post is about how to use a plain text file to create a HTML5 + Javascript presentation. Among the few options, this time I will use KeyDown which is based on deck.js. An example presentation can be found in this link.

To start creating your deck, install the keydown builder:

$ gem install keydown

After that, we can generate a template from scratch with the basics.

$ keydown generate my_presentation

For those that worked before with deck.js this is an improvement making much easier the work.

The result of the generation is a folder with this structure:

| - my_presentation/
	| - css/				- keydown CSS and a file for you to customize
	| - deck.js				- deck library
	| - images/				- Some keydown images, but also for your images
	| - js/					- keydown JavaScript, and a file for you to customize
	| - slides.md

That easy is to generate the squeleton of the presentation. Now you can modify the file slides.md adding your content using Markdown syntax. Each slide is separated by a !SLIDE tag.

!SLIDE

# This is my talk

In the github repository of keydown you can find the details of how to add images and use the template.

After you add your content, you can generate the deck as a HTML5 file using the command:

$ keydown slides slides.md

For me that didn’t work so I checked the open issues and I found an answer in issue 34. I uninstalled compass 1.0.1

$ sudo gem uninstall compass

and installed compass 0.12.7 using the following Gemfile:

source 'https://rubygems.org'

gem 'keydown'
gem 'compass', '0.12.7'

and then executing bundle to build the deck.

bundle
bundle exec keydown slides slides.md

That did the trick and I finally got the slides.html file.

Once that everything is working propertly, edit the presentation is as simple as write Markdown. Then, the result looks good =) Now just use your arrow keys to move.