All Projects → mattmakai → Choose Your Own Adventure Presentations

mattmakai / Choose Your Own Adventure Presentations

Licence: bsd-3-clause
"Choose Your Own Adventure" live voting presentations with Reveal.js, Flask, WebSockets and SMS.

Programming Languages

javascript
184084 projects - #8 most used programming language

Choose Your Own Adventure Presentations

Use this code to create real-time branching presentations so your audience can choose the path through your next technical talk.

This project also is the default WSGI application for the Full Stack Python Guide to Deployments book.

Here's a screenshot of the vanilla choices screen. You can of course modify this initial screen with your own styles and visualizations.

The screenshot may not look like much at first. That's where your story and content come in. To see the potential of audience voting during a presentation to determine the path of the story, check out the "see it in action" section below.

Code walkthrough

Detailed installation instructions and a walkthrough of the code base can be found in this blog post I wrote for Twilio along with the follow-up three part tutorial:

  1. Wizards Only
  2. Even Wizards Need Web Forms
  3. Voting with a Wand (or Smartphone)

See it in action

You can check out how these branching presentations work if you watch the DjangoCon 2014 video "Choose Your Own Django Deployment Adventure" or "Choose Your Own WSGI Deployment Adventure" with Matt Makai and Kate Heddleston.

Here's how the screen looks initially.

After votes start coming in...

Here's an example screenshot I took from the DjangoCon talk with DjangoCon styling.

Software stack

Uses reveal.js, Python, Flask, WebSockets, Flask-SocketIO and Twilio SMS.

Yes, we used a Flask app at DjangoCon. For shame.

Authors

Created by Matt Makai and Kate Heddleston.

This project wouldn't have been possible without Miguel Grinberg's fantastic flask-socketio library and his detailed tutorials. A huge thank you to Miguel for his coding and writing.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].