GithubHelp home page GithubHelp logo

puntorigen / revelo Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 385 KB

CLI tool to effortlessly create visually stunning, text-based presentations with hot-reloading. Export as PDF or MP4. OS-agnostic.

Home Page: http://www.revelo.pro

License: MIT License

JavaScript 65.67% TypeScript 34.33%
cli cli-app ffmpeg nodejs pdf-generation presentation presentation-tools reveal-md revealjs server

revelo's Introduction

A New Way to Create Dynamic Presentations from the Terminal

logo

Revelo is a powerful Command Line Interface (CLI) tool designed to rapidly generate striking presentations and videos using just your terminal. It's easy to use and works seamlessly across different operating systems. So, whether you're getting ready for a meeting or working remotely, Revelo allows you to create and deliver engaging presentations on the go.

Using just a simple text file, Revelo can generate a server-based presentation with your slides, or export your presentation as a PDF, GIF, or MP4 movie. Since Revelo is based on text files, changes can be tracked with any version control system like Github. What's more, it also supports Github workflows, allowing you to include self-generating presentations within your repositories.

Installation-Free Usage

Run Revelo without even installing it:

npx revelo [command] file [options]

Key Features

  1. Server-Based Presentations: Revelo's server command generates a temporary directory with your presentation and serves it on localhost. This comes with hot reloading support, allowing any changes to your text file to automatically refresh the browser session with the updates.
  2. Public URL Access: Revelo uses localtunnel to provide public URL access to your presentations, which you can easily share.
  3. Multiple Export Options: Export your presentation as a PDF, GIF, or MP4 movie using Revelo's export command.
  4. Github Integration: Revelo supports Github workflows, allowing you to generate presentations within your repositories.

CLI Commands

Revelo comes with three main commands:

  1. Server: This command generates a temporary directory with your presentation and serves it on localhost.
  2. Render: This command generates an MP4 movie or GIF animation of your presentation.
  3. Export: This command exports your presentation as a PDF, GIF, or MP4 movie.

Server Command

The server command generates a presentation from the provided text file and serves it on localhost. It supports hot reloading and offers several optional parameters:

--public
Enables a localtunnel session for public access to the presentation. (Please note that hot reloading is currently disabled when this feature is used)

--no-browser
Prevents the server command from opening your default web browser with the presentation.

--autoplay
Removes progress bar, slider controls and automatically progresses to the next slide by the defined time.

Render Command

The render command generates an MP4 movie or GIF animation of your presentation. It supports several optional parameters:

--output
Defines the target MP4/GIF file name and location.

--fps
Defines the frames per second (defaults to 25 for MP4, 5 for GIF).

--tps
Defines the time per slide in seconds (defaults to 'auto' which uses a time-to-read algorithm to determine the best waiting time per slide).

Text File Format

Please see the wiki pages (currently in progress)

Example

Given the following text file (example/hello.txt):

# Hello
this is the first slide
->background-color[green]
->background[forrest,0.6]

---
# another
->background-color[blue]
->wait[1500]
:::{incremental}
- this is another slide
- with some bullets
- and steps
- and emoji's ;-)
::: 

---
## This is the third
->background-color[white]
->background-video[ocean,0.3]
->transition[zoom]
it supports video backgrounds

---

## This is the fourth
->wait[6000]
->background-color[white]
->background[happy people,0.3]
- you can have different <(.blue)> 
- colours per line <(.green)> 

---

## The end now
->wait[10000]
->background-color[black]
->background[nature,0.8]

Running the following command:

npx revelo render example/hello.txt -o hello.gif

Generates the following presentation:
hello

revelo's People

Contributors

puntorigen avatar

Stargazers

 avatar

Watchers

 avatar

revelo's Issues

Fix wait cmd on slides with 'incremental' blocks

When using ->wait command, the time gets applied to each 'segmented' of the slide instead of the whole slide. Revelo should be smart enough of detect the number of fragments and divide the total time of the slide per that amount. While this is not fixed, the overall presentation timing gets wrecked.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.