The idea

A streamer wants to create a new channel mascot with their community, but ideas in chat are easy to lose while the show keeps moving. ShowPact turns those ideas into a sequence of bounded choices, with the creator in control of what makes it into the work.

What it does

ShowPact opens round-scoped Twitch chat votes for a mascot, an activity, and a finishing detail. The creator closes each round and explicitly approves a choice. Accepted choices stay together in a living brief that can be shown on stream and used as the creator makes the artwork. The finished image can be attached and its link sent to Twitch chat; ShowPact’s audience view displays it inline.

The prototype also supports bounded OBS effects, interruption and cleanup, and durable outcome records. A disconnected or uncertain result is reported rather than silently replayed after a restart.

How we built it

We used OpenAI Codex to develop and test the creator-control and Twitch/OBS workflows. ShowPact uses Python, aiohttp, SQLite, Twitch EventSub, OBS WebSocket, and a browser-based control room and audience view. The included Codex segment shows a later inspection of the brief implementation and a focused test.

The demo uses real Twitch chat with the broadcaster casting test votes. The sample mascot illustration was prepared before the test and then attached to ShowPact; the later artwork view is labeled. Twitch chat receives a link, while the ShowPact audience view renders the image inline.

Challenges and learning

A chat vote is not the same as creator approval, and an OBS request is not proof that a viewer saw a result. We kept those stages separate and made interruption and uncertain outcomes visible. The next question is how creators use the workflow with their own communities over time.

Built With

Share this project:

Updates

Submission history