[flask-reveal](https://github.com/humrochagf/flask-reveal) is a cool way to setup your [reveal.js](https://github.com/hakimel/reveal.js) presentations without the need to edit a monolithic html file and using markdown syntax mixed with some html tags.

If you need for some reason reinstall reveal.js files, just run the following command:

```shell$ flaskreveal installreveal```

It will download reveal.js from a default **url** and make the install. If you want to set the **url** by yourself:

```shell$ flaskreveal installreveal -u URL```

If you already have the reveal.js file:

```shell$ flaskreveal installreveal -f FILE```

Where the `FILE` can be either the **.tar.gz** or the **.zip** release file found at the [reveal.js releases](https://github.com/hakimel/reveal.js/releases).

### PDF Export

Presentations can be exported to PDF via a special print stylesheet. This feature will be described using [Google Chrome](https://google.com/chrome) or [Chromium](https://www.chromium.org/Home), but I got the same results using [Firefox](https://www.mozilla.org/en-US/firefox/new/).

1. Run the presentation with flask-reveal.2. Open your brownser with the `print-pdf` as query string like : `localhost:5000/?print-pdf`.3. Open the in-browser print dialog (CTRL+P or CMD+P).4. Change the **Destination** setting to **Save as PDF**.5. Change the **Layout** to **Landscape**.6. Change the **Margins** to **None**.7. Enable the **Background graphics** option.8. Click **Save**.

Alternatively you can use the [decktape](https://github.com/astefanutti/decktape) project.

### Share your presentation using [Ngrok](https://ngrok.com/)

You can easily share your presentation using [Ngrok](https://ngrok.com/). Download it, and put the binary file at root. Then you can do :```shell$ ngrok http 5000```This assume `5000` is your localhost.`ngrok` will create a secure tunnel to your localhost :

# Flags if the presentation is running in an embedded mode, # i.e. contained within a limited portion of the screen 'embedded': False,

# Flags if we should show a help overlay when the questionmark # key is pressed 'help': True,

# Flags if speaker notes should be visible to all viewers 'showNotes': False,

# Number of milliseconds between automatically proceeding to the # next slide, disabled when set to 0, this value can be overwritten # by using a data-autoslide attribute on your slides 'autoSlide': 0,

The markdown used on the presentation files support most of the [GitHub Markdown](https://help.github.com/articles/markdown-basics) and adds some especial html comment tags to edit styles and control effects that are explained on the [reveal.js markdown docs](https://github.com/hakimel/reveal.js/#markdown).

**Important:** You can use all html tags on the presentation files, but some block tags can present unexpected behavior.