Reveal.yaml

Rust implementation of Reveal.js YAML server.

This project was transferred from Python language and now operates in a way that is easier to maintain and release, and it is Rust. Some old functions might be deprecated, and some functions are improved.

This manager downloads the latest Reveal.js archive to provide serving and packing function, and had same licensed as Reveal.js.

Why should use this?

Use Reveal.js with Markdown, but it is still difficult to maintain HTML slideshows. This work provides a clean YAML file for your slides.

Difference to the before work, the Markdown to HTML translation is done by this parser instead of using markdown.js, so there is no more HTML escaping since they will be handled enough. (except using Markdown in your code block recursively, this needs to use <code> tag by yourself)

Tutorial

Slides in HTML: In Reveal.js, the HTML structure shown as following. The typesetting is done by original HTML and CSS. ```html

...
...
...
...

**Slides in YAML**: The horizontal slides are as list in the second block, which is an array. A slide can work with at least one attribute structure. yaml

metadata block

...

slides block

Command Line Interface

The command rym stands for "Reveal-Yaml Manager". ```bash

Download the latest Reveal.js archive

rym update

Create a project to current directory

rym new .

Serve the slides

rym serve

Pack the project to HTML archive

rym pack ```

Features

Here are the implemented features, or the functions are designed in progress.

Some functions are planed to be demonstrated in the help page.

Metadata

Metadata contains HTML settings and global slide settings.

Slides