
Chat Libs! is a Twitch extension that lets viewers collaboratively play the classic fill in the blank word game.

How it Works
- The broadcaster picks a story from the library (or writes your own!) and viewers can use bits to fill in the blanks.
- Broadcasters can moderate words to ensure submitted words fit in the blanks correctly and remove any inappropriate responses before they’re live.
- The Chat Libs! website and the broadcaster dashboard panel let the broadcaster know when the story is done and ready to read out on stream

Tech Stack
API
- Typescript Lambda functions (~20 of them)
- HTTP API Gateway (aka API Gateway V2)
- Websocket API Gateway for story dashboard updates and OBS notification widget
- DynamoDB
- Deployed with CDK
Look ma, no servers!
Frontend
The Twitch extension uses React. This was my first React project beyond tutorials and I’m pretty sure that I tried to shoehorn Vue patterns into this React app.
The management site is a static-SPA hosted on Cloudfront and uses:
- A mix of JS/TS
- Vue 3
- Vuestic UI