Inspiration

Twitch chat is already part of the show. I wanted to turn that energy into the opponent: a boss fight where the streamer can point to a viewer and say, “You fired that!”

What it does

Chat Is the Boss is a real-time 3D browser arena. The streamer connects Twitch, enters the arena and tries to defeat as many bosses as possible before losing five lives. Viewers need only the channel chat: !laser, !charge, !shield, !rockets and !slam trigger boss actions.

The streamer moves with WASD or arrows, holds left mouse or J to fire, and dodges with Space. Momentum, reloads and temporary Rapid Fire, Scattergun and Heavy Cannon pickups keep the player involved. The streamer’s Twitch avatar and username follow the player; command feedback identifies who caused the latest attack. Colourful effects, sound, clear attack warnings and animated results make the fight readable on stream.

How I built it with Codex

I built the project with OpenAI Codex on 30–31 October 2026 through an iterative conversation: start with the audience-versus-streamer idea, play it, identify what feels wrong, and revise. Codex helped write the Three.js procedural arena and boss, gameplay, controls, interface, effects, Twitch backend and tests. The renderer and characters are generated in code, and sounds use WebAudio. There is no runtime AI dependency.

A Node.js server handles Twitch OAuth and EventSub chat messages. Firebase Hosting fronts a Google Cloud Run service. Secrets stay on the backend; each browser session has its own Twitch connection.

Challenges and what I learned

The biggest lesson was that audience participation must be visible and real. Early autonomous attacks made the boss feel disconnected from chat. After testing, I asked Codex to remove autonomous firing in live mode, queue accepted commands in arrival order, preserve paused commands, and show sender and command outcomes. A bounded queue and per-viewer cooldown balance responsiveness with readable combat. Command polling avoids buffering at the hosting proxy.

I also replaced automatic player firing with manual fire, cooldowns, reloads and pickups so the streamer has meaningful decisions. Simplifying the entry screen and requiring Twitch connection made the goal and setup clearer.

What I am proud of

A browser game that brings the creator and viewers into one encounter without asking viewers to install anything. The submission video shows a real Twitch stream, a distinct viewer sending commands, the game confirming a command fired, and the recorded Codex exchange behind the chat-control fix.

Testing and what is next

Backend security and session-isolation checks pass. Live Twitch authorization, EventSub and viewer command delivery have been demonstrated. The hosted build is a single-instance prototype; sessions are in memory and reconnect after a service restart. Next steps are larger live-audience tests, more boss patterns, broader mobile validation and durable session infrastructure.

Try it

Open https://chat-is-the-boss.web.app, connect Twitch as the broadcaster, enter the arena, and capture the game window in OBS. Have a viewer send one of the five commands in your channel. Source and local setup are at https://github.com/nikmlnkr/chat-is-the-boss.

Share this project:

Updates

Submission history