stereopticon

A reveal.js theme slightly inspired by LaTeX/Beamer.
Erwan Bousse
University of Nantes − LS2N, France
An imaginary second author
From somewhere

Hello There!

Description

stereopticon is a reveal.js theme slightly inspired by typical LaTeX/Beamer themes.

Some characteristics

  • Titles of regular slides are rendered at the top.
  • Left-aligned text.
  • Fancy fonts:
    • Yanone Kaffeesatz for titles,
    • Open Sans for regular text.
  • Many extra "helper" CSS classes (for columns, blocks, etc.).

Title Page

The elements of a title page can be styled using the following provided CSS classes:

  • title, as a class for the reveal/js section (dark background etc.),
  • subtitle for the subtitle element (header font, etc.),
  • authors for the authors block, with inside:
    • author to declare an author block,
    • name to name an author inside an author block,
    • institution to give the institution inside an author block,
  • speaker to tag an author's name as the speaker (dashed underline).

Vertical Slides

Vertical slides work as expected.

Basement Level 1

You can go even deeper!

Basement Level 2

That's it, time to go back up.

Now for an impact slide.

Can be used for a nice transition.

Enabled with class="impact".

Fragments

Hit the next arrow...

... to step through ...

... a fragmented slide.

Pretty Code


import React, { useState } from 'react';

function Example() {
  const [count, setCount] = useState(0);

  return (
    <div>
      <p>You clicked {count} times</p>
      <button onClick={() => setCount(count + 1)}>
        Click me
      </button>
    </div>
  );
}
					

Code syntax highlighting courtesy of highlight.js.

Longer code snippet

public static void stringMatch(String one, String two) {
    boolean match = false;
    if (one.charAt(0) == two.charAt(0)) {
        System.out.println(match = true);   // returns true
    } else {
        System.out.println(match);       // returns false
    }
    for (int i = 0; i < two.length(); i++) {  
        int temp = i;
        for (int x = 0; x < one.length(); x++) {
            if (two.charAt(temp) == one.charAt(x)) {
                System.out.println(match = true);    //returns true
                i = two.length();
            }
        }
    }
    int num1 = one.length() - 1;
    int num2 = two.length() - 1;
    if (one.charAt(num1) == two.charAt(num2)) {
        System.out.println(match = true);
    } else {
        System.out.println(match = false);
    }
}

Normal List

  • No order here
  • Or here
  • Or here
  • Or here, but a sublist:
    • with
    • different things

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

Block quote

A block quote can be declared with blockquote.

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.

Columns

  • Some utility CSS classes are provided, such as col-X (with X a number between 1 and 12) to declare a column that uses X/12th of the available width.

  • Columns must be declared within a container that has the columns class.

  • Example with three columns (each a col-4):

First column

  • an item
  • an item
  • an item

Second column

  1. an item
  2. an item
  3. an item

Third column

  • an item
  • an item
  • an item

More columns

Example with an image:

  • On the right is an old stereopticon.
  • It is a projector from the mid 19th century.
  • It uses two lenses to be able to transition smoothly from one image to another.

Vertical spacing

The CSS class vspace-X (with X a number between 1 and 200) can be applied on an element to add a blank vertical space of X pixels before the element.

It can also be applied to an empty div.

As an example, this paragraph has a vspace-150!

Blocks

The CSS class block can be used to put things in blocks.

Example of block

Hello!

References (1)

The CSS class references can be used to put references at the bottom of a slide. Each reference must have the reference class.

However there is no clean way yet to cite a reference in the body of the slide.

Einstein, Albert. The Meaning of Relativity. Princeton: Princeton University Press, 1923.
Global Campaign for Education. “Girls Can’t Wait: Why Girls’ Education Matters and How to Make It Happen Now: Briefing Paper for the UN Beijing 10 Review and Appraisal.” Reproductive Health Matters 13, no. 25 (May 2005): 19–22. http://www.jstor.org/stable/3776224.

References (2)

The identifiers of references keep incrementing accross slides.

Andy Hunt & Dave Thomas. The Pragmatic Programmer: From Journeyman to Master. Addison-Wesley. 1999.
Erich Gamma, Richard Helm, Ralph Johnson & John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley. 1994.