Skip to Content

2024.05.10

Multiplayer Slideshows

In which we look at what we can do when a presentation with slides is also a website.

Multiplayer Slideshows

  • Peer-to-Peer Connections
  • Input from the Audience
  • Visualization of Results

A Slide is a Website

qrCode

Is there a seperate experience for the audience?

If there is, you can add interaction to any presentation based on the QR code. This means it can go in to PowerPoint, Google Slides, iA Presenter, whatever.

This seperate audience experience can also be incredibly stripped down, severless, and basically free to run.

The problem here is that the presenting controller still needs to:

  1. Emit to the audience experience
  2. Read results from the audeince experience

In orde to do that inside of non-web presentation decks we will need some sort of server to act as an exhange mediator, since I doubt any of these presentation spaces are happy to let me hack WebRTC into them.

Lets posit our system like so:

  1. A QR Code routes the audience to the Audience Experience.
  2. That QR Code can be embedded as an image anywhere.
  3. The Audience Experience displays & handles interactive screens.
  4. The Presentation emits events to the Audience Experience.
  5. The Presentation accepts events from the Audience Experience.

Weak Presenter / Strong Presenter

In this definition, covering the last two points is what allows us to get away from using central servers. However, it means that means the Presenter needs to be running an a web client environment in order to have access to the Web APIs we need to actually do that stuff. This is a Strong Presenter.

Just sticking the QR code link to the Audience Experience from inside some static presentation – maybe it’s like, an overhead projector or something – means that we don’t have a web client environment and we don’t have any web APIs to work with.

A Presenter Experience

In order to run on an overhead projecter, the interatcive presentation needs a Presenter Experience. This acts a Stong Presenter. This is built using the exact same tools that a Strong Presenter would use to make the role. Now the Strong Presenter can be built into a website prsentation like this, or it can be run from a Phone while using an overhead projecter.

We’ll start by building a Strong Presenter here in this website, and pair it will an external app that is the Audience Experience.

Simple Spec

  • Audience Experience connects to Presenter over WebRTC
  • Presenter Emits slide URL over WebRTC
  • AuEx fetches the URL provided
  • Presenter URL delivers a compnent
  • AuEx renders the component
  • AuEx pipes results of interaction to the Presenter over WebRTC
  • Presenter renders results as they come in
  • Presenter sends results to the AuEx over WebRTC
  • AuEx renders results

Elsewhere

© 2026