https://github.com/alivx/revealjs-digital-signage
Free Presentation Digital Signage for Everyone. Start using this tool right now. Ego View Digital Signage is an easy tool to create Digital Signage.
https://github.com/alivx/revealjs-digital-signage
digital-signage dockerfile flask html-files jinja2 jinja2-templates presentations python raspberrypi reveal-js revealjs signage slide
Last synced: about 2 months ago
JSON representation
Free Presentation Digital Signage for Everyone. Start using this tool right now. Ego View Digital Signage is an easy tool to create Digital Signage.
- Host: GitHub
- URL: https://github.com/alivx/revealjs-digital-signage
- Owner: alivx
- License: mit
- Created: 2020-10-15T07:35:51.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-11-12T16:28:20.000Z (11 months ago)
- Last Synced: 2025-08-19T07:10:09.450Z (about 2 months ago)
- Topics: digital-signage, dockerfile, flask, html-files, jinja2, jinja2-templates, presentations, python, raspberrypi, reveal-js, revealjs, signage, slide
- Language: JavaScript
- Homepage: https://github.com/alivx/revealjs-digital-signage
- Size: 18 MB
- Stars: 12
- Watchers: 2
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
Revealjs as Digital Signage (RDS) (beta testing)
=========[](https://travis-ci.org/alivx/revealjs-digital-signage)
Free Digital Signage for Everyone. Start using this tool right now. `Revealjs as Digital Signage (RDS)` is an easy tool to create Digital Signage.
This tool use jinja2 template to render it to ready Revealjs html using python.
# config.yaml
Presentation behaviour can be fine-tuned using a wide array of configuration optionsExample:
```Bash
htmlOutputFileName: index.html #Final output HTML file
combinedHTMLSlides: mergedHTML.html #Name of combined section
slidesPrefixPathnName: sections/slide*.html #Section html files path and prefix
templateFileName: mainTemplate.html #Main HTML template file
finalOutputDir: output #Output Dir name
transitions: zoom # none, fade, slide, convex, concave, zoom
autoPlayMedia: "true" #null, "true", "false"
hashOneBasedIndex: "true"
```# generate.py
run command to render the template `python generate.py`# static/Media
Store all media that you used inside the slides# static/Files
Do not touch those file(revealjs files), if you do not know what you do :)# sections
Put all your slide in HTML files---
# How to use
[ascii play cast](https://asciinema.org/a/367581)0. Create new venv by `python -m venv venv/`
1. Put your slide as HTML in `sections` Dir.
2. Put your media files in Media if exists.
3. change the config files if required.
4. run command `python generate.py`
5. the output file with name `index.html` will appear in the root Dir.To control slide using cli:
run `cd signage;python main.py` in other terminal.
Next slide: run command `curl http://localhost:/500/next`
Prev slide: run command `curl http://localhost:/500/next`
Jump to slide: run command `curl http://localhost:/500/slide/slide_number`## Using Docker to generate a new slides files from existing one.
```Bash
docker container run -ti -p5000:5000 --net=host alivx/ali:latest
Or for local edit
docker container run -ti -v $PWD:/app -p5000:5000 --net=host local:rds
```Check the output Dir for final HTML files, you can find path under config['finalOutputDir']
# Serve html file using flask
under output file, run python serve.py* check default URL http://localhost:5000
* you can change flask setting under `config.yaml`# How to add new section(slide)
Markup hierarchy needs to be