Present your work with

reveal.js logo

At glance...

  • Why ?
  • How ?
  • What ?

Presentations nowaday

  • Ease of use
  • What You See Is What You Get
  • Proprietary
  • Destructive editing workflow
  • Not convenient for versioning
  • Non-interactive presentations
Not suitable to present interactive data and projects
What technology could easily handle interaction in presentations ?


Web of course !

How ?

With an HTML Presentation Framework

With an HTML Presentation Framework

reveal.js deck.js impress.js shower inspire.js flowtime.js

Setup to use

reveal.js logo

The three ways to create slides



No code
Not free !

Fast prototyping
Code readability
Tedious customization

Easy customization
A bit slower

Using slide.com

Using markdown in VSCode


vscode-reveal extension

Using HTML/CSS in VSCode


live preview extension

Main idea

  • An HTML file contains the whole presentation
  • Themes as CSS files
  • Plugins for extra functionality
  • A JavaScript API for really custom things

Main HTML file structure


								
						
								reveal.js
						
								
								
								
						
								
								
							
							
								
Slide 1
Slide 2

Unleash the web power

Point of View

Press ESC to enter the slide overview.

Hold down the alt key (ctrl in Linux) and click on any element to zoom towards it using zoom.js. Click again to zoom back out.

(NOTE: Use ctrl + click in Linux.)

Touch Optimized

Presentations look great on touch devices, like mobile phones and tablets. Simply swipe through your slides.

Animation with fragments

Hit the next arrow...

... to step through ...

... a fragmented slide.

Fragment Styles

There's different types of fragments, like:

grow

shrink

fade-out

fade-right, up, down, left

fade-in-then-out

fade-in-then-semi-out

Highlight red blue green

Auto-Animate

Automatically animate matching elements across slides with Auto-Animate.

Auto-Animate

Auto-Animate

Transition Styles

You can select from different transitions, like:
None - Fade - Slide - Convex - Concave - Zoom

Themes

reveal.js comes with a few themes built in:
Black (default) - White - League - Sky - Beige - Simple
Serif - Blood - Night - Moon - Solarized

Slide Backgrounds

Set data-background="#dddddd" on a slide to change the background color. All CSS color formats are supported.

Image Backgrounds

<section data-background="image.png">

Tiled Backgrounds

<section data-background="image.png" data-background-repeat="repeat" data-background-size="100px">

Video Backgrounds

<section data-background-video="video.mp4,video.webm">

... and GIFs!

Background Transitions

Different background transitions are available via the backgroundTransition option. This one's called "zoom".

Reveal.configure({ backgroundTransition: 'zoom' })

Background Transitions

You can override background transitions per-slide.

<section data-background-transition="zoom">

Iframe Backgrounds

Since reveal.js runs on the web, you can easily embed other web content. Try interacting with the page in the background.

Marvelous List

  • No order here
  • Or here
  • Or here
  • Or here

Fantastic Ordered List

  1. One is smaller than...
  2. Two is smaller than...
  3. Three!

Tabular Tables

Item Value Quantity
Apples $1 7
Lemonade $2 18
Bread $3 2

Intergalactic Interconnections

You can link between slides internally, like this.

Speaker View

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.

Export to PDF

Presentations can be exported to PDF, here's an example:

Shaders

Interactive content

3D Objects visualization

Data visualisation with D3JS

Credit: Force-Directed Tree by D3

Your limitation :

THE END

This presentation source code