A workshop by
Craig Rafter and Konstantinos Drakopoulos
reveal.js enables you to create beautiful interactive slide decks using HTML. This presentation will show you examples of what it can do.
Slides can be nested inside of each other.
Use the Space key to navigate through all slides.
Nested slides are useful for adding additional detail underneath a high level horizontal slide.
That's it, time to move on!
Slides are built using HTML and JavaScript. For those of you unfamiliar with web programming, reveal.js also allows Markdown to be used.
Press ESC to enter the slide overview.
Hold down alt and click on any element to zoom in on it using zoom.js. Alt + click anywhere to zoom back out.
Embed plotly.js or chart.js plots right into your slides!
Hit the next arrow...
... to step through ...
... a fragmented slide.
There's different types of fragments, like:
grow
shrink
fade-out
current-visible
highlight-red
highlight-blue
You can select from different transitions, like:
None -
Fade -
Slide -
Convex -
Concave -
Zoom
reveal.js comes with a few themes built in:
Black (default) -
White -
League -
Sky -
Beige -
Simple
Serif -
Blood -
Night -
Moon -
Solarized
Set data-background="#dddddd"
on a slide to change the background color. All CSS color formats are supported.
<section data-background="image.png">
<section data-background="image.png" data-background-repeat="repeat" data-background-size="100px">
<section data-background-iframe="https://www.youtube.com/embed/ZXsQAXx_ao0" data-autoplay data-background-color="#000000">
<section data-background="http://i.giphy.com/90F8aUepslB84.gif">
Different background transitions are available via the backgroundTransition option. This one's called "zoom".
Reveal.configure({ backgroundTransition: 'zoom' })
You can override background transitions per-slide.
<section data-background-transition="zoom">
import numpy as np
from matplotlib import pyplot
x = np.arange(10)
y = x**2
pyplot.plot(x, y)
pyplot.title('$x vs x^2$')
pyplot.xlabel('$x$')
pyplot.ylabel('$x^2$')
Code syntax highlighting courtesy of highlight.js.
You can link between slides internally, like this.
These guys come in two forms, inline:
“The nice thing about standards is that there are so many to choose from”
and block:
“For years there has been a theory that millions of monkeys typing at random on millions of typewriters would reproduce the entire works of Shakespeare. The Internet has proven this theory to be untrue.”
There's a speaker view. It includes a timer, preview of the upcoming slide as well as your speaker notes.
Press the S key to try it out.
Press B or . on your keyboard to pause the presentation. This is helpful when you're on stage and want to take distracting slides off the screen.
Additionally custom events can be triggered on a per slide basis by binding to the data-state
name.
For example, by setting up an event listener on slide trasitions we can turn the university logo on/off.
The following script is placed at the end of the file:
Reveal.addEventListener('slidechanged', function(event) {
if (event.indexh == 25 && event.indexv == 1) {
document.getElementById("unilogo").style = "visibility: hidden;";
}
else {
document.getElementById("unilogo").style = "visibility: visible;";
}
});
Many more at Reveal.js - Plugins, Tools and Hardware
Thank You!
Now onto the fun part!