generator-reveal

by slara

Yeoman generator for Reveal.js

428 Stars 57 Forks Last release: Not found MIT License 257 Commits 23 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Reveal.js generator Build Status Coverage Status NPM version

Dependency Status devDependency Status

A Yeoman generator for the awesome Reveal.js presentation framework.

Usage

Creating a new presentation

Install:

npm install -g generator-reveal

Make a new directory, and

cd
into it:
mkdir my-new-project && cd $_

Run

yo reveal
and start building your presentation.

After all files are created you can view your slides with

grunt
:
grunt serve

Then, create further slides with

yo reveal:slide more-content
. See below for available options. When you want to export your presentation to some static HTML server, you can type
grunt dist
to have all your relevant files saved to the
dist
directory.

Working on an existing presentation

If you are checking out an existing presentation to do some work on it, make sure to install the required dependencies:

cd my-existing-project
npm install && bower install

Now you should be able to view the slides again with

grunt
:
grunt serve

Generators

Available generators:

Slide

Generates a Slide file.

Example:

bash
yo reveal:slide "Slide Title"

Produces

slides/slide-title.html
:

Slide Title

This is a new slide

And the slide filename will be added to your

slides/list.json
file.
[
    "index.md",
    "slide-title.html"
]

Vertical Slides

In order to add vertical slides, you can nest an array inside

slides/list.json
[
    "index.md",
    [
        "vertical-html.html",
        "vertical-markdown.md"
    ],
    [
        "vertical-html-2.html",
        "vertical-markdown-2.md"
    ],
    "the-end.md"
]

Simple (Image) Slides

Sometimes you just want a slide with a background image. That's okay, a slide object does not need a filename.

[
    "index.md",
    {
        "attr": {
            "data-background": "http://example.com/image.png"
        }
    }
]

Options

Markdown

Invoked with

--markdown
yo reveal:slide "Slide Title" --markdown

Produces

slides/slide-title.md
## Slide Title

This is a new slide

Attributes

Invoked with

--attributes
yo reveal:slide "Slide Title" --attributes

adds a slide

Object
with an
attr
key to your
slides/list.json
file. Attributes will be passed to
section
element containing the slide.
[
    "index.md",
    {
        "filename": "slide-title.md",
        "attr": {
            "data-background": "#ff0000"
        }
    }
]
Speaker Notes

Invoked with

--notes
yo reveal:slide "Slide Title" --notes

Produces

slides/slide-title.html
:

Slide Title

This is a new slide

All three options maybe combined, e.g.

yo reveal:slide "Markdown Slide With Notes And Section-Attributes" --notes --attributes --markdown

Resources

If your presentation requires specific resources that you would like included with your project, place them in the resources directory. These assets will be included in the distribution and available for access at the path

resources/asset_name.ext
.

Github Pages Deployment

With the help of Grunt Build Control,

generator-reveal
can deploy your presentation to Github Pages easily. All you have to do is
  • Set your username and repository name when you call
    yo reveal
  • Create and configure your remote Github repository for the presentation
  • Push your first commit
  • Deploy with
    grunt deploy

If everything goes right,

grunt deploy
will build and push your presentation to a gh-pages git branch. Just give it a couple of minutes, fire up a browser and go to http://username.github.io/repositoryname to see your brand new presentation.

Customisation

To change the options of the whole presentation, such as the theme used, transition effect etc. consult the Reveal.js documentation. An important difference, though, is that you should not edit the

index.html
file directly as it gets overwritten as you add presentation content whenever a new grunt build is triggered. You should instead edit the
templates/_index.html
file, which is used as a template for the automatically generated
index.html
.

Highlight.js Syntax Themes

The generated presentation app includes the Highlight.js Syntax Themes as a dependency, allowing you to change the syntax theme.

The available syntax themes can be found in the

bower_components/highlightjs/styles
folder. Selecting a new syntax theme can be done by changing the stylesheet reference in the
templates/_index.html
file:

License

MIT License

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.