Show HN: Choose your own adventure style Presentation

https://news.ycombinator.com/rss Hits: 12
Summary

Hand-drawn with Procreate. Adventure Voter An interactive presentation system where your audience votes on what happens next. Think "Choose Your Own Adventure" meets live polling for tech talks and workshops. What It Does You write your presentation as markdown files with decision points. When you reach a choice, your audience votes on their phones, and the presentation follows the path in real-time. All communication happens over WebSockets, so votes appear instantly. Showcase Because presentations should be fun! I sat through way too many boring presentations which could have a lot better given a tiny bit of adventure. Don't get me wrong, I like a good technical presentation that shares a lot of interesting details about the latest™ tech. But after a long day at KubeCon you don't want to sit through yet another slideshow. This frustration and my love for TTRPGs made this... thing, happen. State This is in heavy alpha. While I tested it, I'm pretty sure it's not without its faults. Especially since I'm terrible at frontend development. The code there is pieced together from forums, books, and bits of code from various repos that do some websocket handling. It works quite well, and I'm reasonably sure it does not farm coins... CSS I used the bare minimum I could find, which is alpine.js. Quick Start Using Docker: docker-compose up --build Then open http://localhost:8080/presenter for your presentation screen and share http://localhost:8080/voter with your audience. Or build from source: make build # Or: go build -o adventure . ./adventure The frontend is embedded in the binary at compile time using Go's embed package, so you only need the binary and your content files for distribution. Once done, run docker-compose down to shut it down. Download from latest release: Go to the GitHub release page, for example: https://github.com/user/adventure-voter/releases/tag/v0.0.1 Find your binary, download and extract it. From there, simply create a structure like this: ➜ tree ...

First seen: 2025-11-29 02:42

Last seen: 2025-11-29 13:44