Themen 35c3 - Presentations With Hugo and Reveal
Go to file
dzello 0e79c0d110 Add a layout for creating a presentation from a section 2018-04-26 16:36:13 -07:00
exampleSite Improve slide example for shortcodes 2018-04-26 16:14:26 -07:00
images Initial commit 2018-04-26 15:25:43 -07:00
layouts Add a layout for creating a presentation from a section 2018-04-26 16:36:13 -07:00
static Initial commit 2018-04-26 15:25:43 -07:00
.gitignore Initial commit 2018-04-26 15:25:43 -07:00
LICENSE Initial commit 2018-04-26 15:25:43 -07:00
README.md Update README.md 2018-04-26 16:12:22 -07:00
netlify.toml Locate Netlify-specific params in netlify.toml 2018-04-26 15:42:20 -07:00
theme.toml Initial commit 2018-04-26 15:25:43 -07:00

README.md

reveal-hugo

A Hugo theme for creating Reveal.js presentations that allows you to put multiple slides in the same markdown file.

screenshot of reveal-hugo

The motivation behind creating this theme is pretty simple - I didn't want to have to manage one markdown file for every slide, which would add the overhead of coming up with a file name, setting a weight param in the front matter to keep it in order, etc, all for just a few lines of text. Instead, I like to organize groups of slides into a smaller number of markdown files, each representing a section of the presentation.

Example

Using reveal-hugo, a three-slide presentation can be created with just one markdown file, like so:

# English
Hello.

---

# Français
Salu.

---

# Espagñol
Hola.

The only requirement is to demarcate slides with --- surrounded by newlines.

Demo

Visit https://reveal-hugo.netlify.com/ to see an presentation created with this theme that shows more ways to use it.

Usage

To create the presentation, the theme will look for all Hugo pages that have a type of reveal. That means they're in a reveal directory in the content folder OR the type is manually set to reveal in the front matter.

type = 'reveal'

Use the weight param in the front matter to specify the order that the pages should appear in the presentation.

weight = 20

Fragments

Fragments are a Reveal.js concept that lets you introduce content into each slide incrementally. Borrowing the concept from hugo-theme-revealjs, you can use a fragment shortcode to accomplish this in reveal-hugo in the same way.

# Let's count to three...
{{% fragment %}} One {{% /fragment %}}
{{% fragment %}} Two {{% /fragment %}}
{{% fragment %}} Three {{% /fragment %}}

Configuration

  • params.reveal_theme: The Reveal.js theme used, defaults to "black"