BubbleText is one of the first bits-enabled Twitch extensions.
It provides unique interactive experience by allowing viewers to spawn custom animated speech bubbles on the broadcast.
Well, nothing would explain that better than the extension itself. However, due to some miscommunication and budget problems with Twitch, we decided to disable the extension.
But don't worry, we've got something to show you!
First, here is a link to our awesome presentation that neatly showcases all the functionality and design patterns of the extension.
Secondly, you can run the app locally using instruction from frontend and backend sections.
One might ask: there are simillar tools like streamlabs, how is BubbleText superior to those? Here is the answer:
- It provides in-platform experience by being usable directly through Twitch.
- Every interaction is highly dinamic and customizable.
- BubbleText has a direct effect on the stream.
- Isn't it fun to make your favorite streamer say something?
This repo contains both front- and back-end parts of the extension.
BubbleText extension frontend was solely developed by @Ciberusps.
Thanks to him as our extension has an outstanding appearance and truly intuitive UX.
It was developed with React with Webpack and Babel.
All relevant files/instructions can be found under frontend_extension
directory.
All the server-side code is located under backend/server
directory. You can also find backend/serverenv
directory helpful as it contains python virtualenv to run the server locally.
Original app was deployed on AWS EB.
To run the app locally:
cd backend/server
make run
All the log files are located under backend/server/logs
.
To clean log files:
cd backend/server
make clean
Server provides API JWT-protected endpoints, tutorial website reachable at localhost:5000/tutorial?streamerId=<id>
and communication with MongoDB running locally OR based on remote URI (see backend/server/settings/mongo_settings.py
).
You can reach me here or by email at dankubatko@gmail.com.
Pavel's contact information is available in his portfolio.