Inspiration

Twitch chat is the loudest co-creator on the platform, but its energy evaporates the second a poll ends. We wanted chat itself to author a shared story in real time - every viewer a co-writer.

What it does

Chat Relay Studio turns Twitch chat into a story engine for a live overlay:

  • Viewers type !vote explore, !vote help or !vote build in normal Twitch chat.
  • The studio connects over live IRC with a chat:read OAuth token and parses every vote.
  • A moderator opens 15-second voting rounds; the winning action generates the next story scene on the overlay, with contributors credited.

How we built it

Node.js + TypeScript from scratch, with no third-party chat SDKs: a raw IRC client, a vote parser with duplicate and invalid filtering, a moderator panel (open/close/approve/undo/replay) and a deterministic, seed-based scene generator. The whole app runs locally on port 3210.

Challenges we ran into

Twitch''s implicit OAuth flow returns the access token in a URL fragment the local server never sees, so we read it from the redirect in the browser. Twitch chat inputs only react to real key events. And timing a 15-second voting window over live IRC latency needed careful deadline handling.

Accomplishments that we''re proud of

The demo video shows the real app, end to end: votes typed in actual Twitch chat are parsed, tallied and approved into story scenes in under 20 seconds per chapter.

What we learned

How far you can get with raw protocol work: IRC + OAuth + SSE is a complete real-time stack for interactive streams.

What''s next for Chat Relay Studio

Per-channel leaderboards, scene overlays with streamer branding and multi-round story arcs.

Share this project:

Updates

Submission history