Skip to content

Living Stage

Living Stage is a presentation surface that builds itself while you talk.

Core trick

Phrase boundaries from speech recognition trigger incremental model calls that stream JSON widget specs, with a 60fps canvas rendering the sliders.

Tags

Description

Living Stage is a presentation surface that builds itself while you talk. The presenter speaks into a mic or types a short phrase, and an interactive visualization grows on screen in real time. At the center sits a hands-on mathematical model with sliders the speaker can drag mid-sentence. The chart behind the slider re-evaluates at 60 frames per second on a hand-drawn canvas, so the audience sees the model react instead of staring at a static image. Around the hero, supporting widgets like time series charts, side-by-side comparisons, flow diagrams, and annotated formulas with rendered math appear phrase by phrase as the talk unfolds. Follow-up phrases add to the existing scene rather than replacing it, so the slide is literally growing while you speak. If the speaker says, “forget that, now show something else,” the stage resets cleanly. The problem it solves is the gap between rehearsed static slides and the live conversation in the room. Conventional decks are assembled days before the talk and cannot respond once the talk starts. Living Stage removes the deck entirely and gives the audience something the speaker can actually manipulate. It runs on Gemini 3.5 Flash through the official SDK, with streaming structured JSON, a byte-stable prompt prefix that hits the implicit cache, and an honest fallback that announces itself if anything in the live path takes longer than four seconds.
Poiurity/Predator★ 00 forksTypeScriptCreated May 23, 2026 · last push May 23, 2026

README excerpt

# Living Stage

Speak, and the slide grows.

A voice-driven presentation surface that builds interactive visualizations in
real time as the presenter speaks. The stage's centerpiece is an interactive
**Sim** widget — a live mathematical model with sliders that re-evaluate at
60fps as the speaker drags them. Around it, supporting widgets (charts, flow
diagrams, comparisons, annotated notes) grow into place phrase by phrase
while the presenter talks.

Built for the 2026 Google I/O Hackathon. Live demo:
**https://predator-635265297806.us-central1.run.app/**

---

## What it does

1. **You speak (or type).** The browser's Web Speech API streams interim
   transcript; phrase boundaries (300 ms silence, commas, conjunctions) fire
   incremental orchestrator calls.
2. **The model decides what to show.** Gemini 3.5 Flash returns a structured
   JSON layout (`{ intent, hero, slots, uid }`). `intent` ∈
   `{fresh, add, replace}` lets short follow-up phrases _add_ to the existing
   scene instead of replacing it — so the stage grows as the talk unfolds.
3. **Widgets fill in parallel, streaming.** Each slot's content arrives as
   Gemini streams JSON; a partial-JSON parser pushes intermediate shapes to
   the widgets so the audience sees data appearing as it's generated.
4. **The transcript self-corrects.** A second, cheap model call polishes the
   raw ASR output every ~600 ms, so earlier words get re-interpreted when
   later context arrives ("Moto mortgage" → "Model mortgage").
5. **R

Team