Inspiration
Joining a stream halfway through feels like walking into a movie at the 40-minute mark. Chat is full of inside jokes, and the streamer has to keep explaining what just happened. We wanted a way for new viewers to catch up on their own, so streamers can keep going.
What it does
CatchUp listens to a channel's chat and stream events (raids, subs, polls, predictions) and keeps a short, live summary of the stream. Viewers open it as a panel or type !catchup in chat to get a quick recap.
How we built it
- Used Codex to scaffold, write and refactor most of the codebase
- Connected to Twitch with EventSub (events) and the Twitch API (channel/stream info)
- A small backend groups messages into time windows and summarizes them
- A lightweight frontend shows the recap to viewers
Challenges we ran into
- Fast chat is noisy: emote spam and copypasta drown out what actually happened
- Getting Twitch auth scopes and EventSub subscriptions right
- Keeping recaps short and accurate without spoilers or made-up details
What we learned
- How Twitch's event system works from start to finish
- How to work with Codex as a pair programmer: give it small, clear tasks and review every diff
What's next
Streamer-side moderation of recaps, clip links inside recaps, and multi-language support.
Built With
- codex
- css
- eventsub
- fastapi
- html
- javascript
- openai
- python
- twitch
- twitch-chat
- twitch-extensions
- websockets
Log in or sign up for Devpost to join the conversation.