Today I released 0.16.0 of middleman-presentation. This release brings you some new features.

This project helps you to build wonderful presentations based on HTML and JavaScript. The JavaScript-part is powered by reveal.js, a great framework to build HTML-/JavaScript-presentations. The infrastructure behind middleman-presentation is powered by middleman, a flexible static site generator which also offers a live preview of your presentation.

  • First and foremost it brings plugin-support

    You can use a plugin to bundle custom assets – images, stylesheets, javascripts – you want to use in your presentation. Furthermore you can add ruby helpers as well. There will be a follow up post in the near future, which will explain how to build your own plugin for middleman-presentation.

  • Nested template engines for slides

    By adding to a slide name, first Erubis will parse your slide, second Kramdown will parse the result. This can help you if you need some more dynamic slides, but you don’t want to miss the comfort of Markdown.

  • Add standalone webserver for exported presentations

    I added a standalone webserver to the gem which will be added to all exported presentations. If you want to give your presentation away as zip-file, the other person does not need to install a webserver to view your presentation in all its glory. She just needs to unzip the presentation and run the server-executable. There are pre-compiled 64 bit-executables avaible for all major platforms: Linux, Mac OS X and Windows.

  • Minify assets and html

    JavaScript, Stylesheets will now be minified on build.

  • Localized cli

    I did my best to fully localize the cli for English and German.

  • Smart Quotes in Markdown

    Now support for smart quotes in Markdown-slides is enabled by default. But this is configurable.

  • Improvements on the commandline

    Now there are a lot of new commandline commands available to list known assets, frontend components, plugins etc. But also a helper to create plugins or to change the name of an existing slide – I found that helper quite handy by the way :-). I also added some wrapper code to wrap middleman-commands. So there’s no need to know both commandlines – from middleman and middleman-presentation. And there’s also an export-command which should help you, if you want to give your presentation way as zip-file. If you need to re-create your presentation for some reason, you might want to use the --force-flag.

  • Move helpers to helper-gem

    I move some helper-code to the helper-gem which makes use of the new plugin-mechanism.

  • Use highlight.js directly

    I switched from the version of highlight.js coming with reveal.js to a native one, which is much more newer. The reason for this was the mismatch of the online documentation for hightligh.js with the version which comes with reveal.js.

That’s it. Happy presenting.


If you found a mistake in this article or would like to contribute some content to this article, please file an issue in this Git Repository


The contents of this article are put together to the best of the authors' knowledge, but it cannot be guaranteed that it's always accurate in any environment. It is up to the reader to make sure, that all information found in this article, does not do any damage to the readers's working environment or whereever this information is applied to. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, arising from, out of or in connection with this article. Please also note the information given on the Licenses' page.

Related Articles