Gist-Powered

Reveal.js

Slideshow Presentations


gist-reveal.it

Try it out!

Create your own deck by forking a copy of this github gist:
https://gist.github.com/ryanj/af84d40e58c5c2a908dd

Or, by placing any valid Revealjs <section> tag content into a fresh gist.


When you're ready to view your slides, grab your github gist id and add it to the end of this url:

http://gist-reveal.it/YOUR_GIST_ID_HERE

Presentations on the Open Web

Reveal.js is a framework
for easily crafting
beautiful presentations
in HTML

You'll need a browser with support for CSS 3D transforms to see it's full capabilities.

Tips on using Reveal.js

There is a lot of great information about using Reveal.js in the project's README page on GitHub.

Their original slide deck sample conent also contains a lot of great examples.

## Gist-powered Slideshow Themes Available CSS themes include [the default reveal.js themes](http://lab.hakim.se/reveal-js/#/themes), but can be easily extended by storing new themes [in a gist](https://gist.github.com/450836bbaebcf4c4ae08b331343a7886): * [a theme from the CoreOS team](?theme=450836bbaebcf4c4ae08b331343a7886#/themes) * [a theme for OpenShift fans](?theme=60e54843de11a545897e#/themes) * [the revealjs black theme](?theme=black#/themes) * [the revealjs simple theme](?theme=simple#/themes) * [the revealjs league theme](?theme=default#/themes) * [the revealjs sky theme](?theme=sky#/themes) Conference organizers can host their own modified gist-reveal templating service (with it's own default theme), to provide a consistent look for all presentations at an event.

Host your own slideshow service on Kubernetes

To create a kubernetes deployment and NodePort service, both named gist-reveal, run:

kubectl run gist-reveal --image=ryanj/gist-reveal \
--expose --port=8080 --service-overrides='{ "spec": { "type": "NodePort" } }' \
--env="DEFAULT_GIST=YOUR_DEFAULT_GIST_ID" \
--env="GH_CLIENT_SECRET=YOUR_GH_CLIENT_SECRET" \
--env="GH_CLIENT_ID=YOUR_GH_CLIENT_ID" \
--env="REVEAL_SOCKET_SECRET=0P3N-S0URC3" \
--env="GA_TRACKER=YOUR_GA_TRACKER"

Minikube users should be able to open the new service in their browser by running:

minikube service gist-reveal

Host your own slideshow index with Docker

Start up a local development server on port 8080:

docker run ryanj/gist-reveal

For production, I like to daemonize the process, configure a default gist_id, and make the container available on port 80:

docker run -d -p 80:8080 -e "DEFAULT_GIST=af84d40e58c5c2a908dd" ryanj/gist-reveal

GITHUB API RATE LIMITS

Include your own GitHub application keys if you plan on making more than 60 requests in 2 hours:

docker run -e "GH_CLIENT_SECRET=11becbb840e0ff7414b19104e9e797556498fc3f" -e "GH_CLIENT_ID=639ffe9fd9dcc4f6eb4b" ryanj/gist-reveal

Built-in Analytics

Include your own GA-TRACKER key:

docker run -e "GA_TRACKER=UA-12345678" ryanj/gist-reveal

Broadcasting Your Slide Transitions

with Socket.IO

docker run -e "REVEAL_SOCKET_SECRET=0P3N-S0URC3" ryanj/gist-reveal

Configure your browser as a presentation device by setting the same key in your browser's localStorage

localStorage.secret="YOUR_SECRET_KEY"

Be sure to use two different devices or brower types when testing your broadcasting relay
(FireFox vs. Chrome, desktop vs. mobile, etc.)

THE END

Revaljs by Hakim El Hattab / hakim.se

gist-reveal by ryanj and fkautz


github.com/ryanj/gist-reveal
hub.docker.com/r/ryanj/gist-reveal

Runs on Kubernetes Presented by: @ryanj