Many streamers can benefit from increased chat interaction and more reasons to receive bits and cheers. TwitchStonks allows viewers to anticipate heroic plays or embarrassing fails.

What it does

All viewers on a channel are given a starting amount of points to invest in emotes. Emote prices go up and down based on the live usage rate in the chat. Is your favorite streamer making a sneaky flank play? Invest in PogChamp if you think you're about to witness an Ace or watch your portfolio come tumbling down as chat decides to LUL it off instead.

Viewers aim to buy low and sell high as they intently watch their favorite streamer make clippable plays.

How we built it

This is a Twitch Extension that utilizes the Video Overlay component to place a togglable widget on top of the video player. The front-end is built with React and Material-UI to bring an eye pleasing widget to the experience. For the backend, we have a Python module connecting to the Twitch chat through an IRC wrapper. Here, we also handle parsing out the emojis. Most of the heavy lifting back-end is done with a Java Spring project where we interface with a MySQL database to store everyone's stonk portfolio.

Challenges we ran into

We initially had a lot of trouble finding an idea since we thought the extension and development tools gave a limited experience. However, once we figured out the potential of Twitch extensions we were able to get the ball rolling.

Furthermore, using three different "micro-services" for such a small Hackathon project added another level of complexity. We allowed each group member to play to their strengths at the expense of some overhead of having to serialize data into JSON over HTTP. We were, however, able to overcome this difficulty without any noticeable hiccups for the user experience.

Accomplishments that we're proud of

We were pleasantly surprised to find how seamlessly we were able to work with two different backends and a separate front-end.

What we learned

We learned a lot about the potential of Twitch Extensions to allow viewers to impact the live stream. Giving viewers the ability to participate in a fun way that is directly derived from the content of the stream and that doesn't distract from the stream itself creates an enhanced sense of interaction between the streamer and the audience. It also creates an incentive for viewers to be involved actively with the stream, the streamer, and with other members of a streamer's community, rather than being passive viewers.

What's next for TwitchStonks

TwitchStonks has a huge potential to increase chat interaction with heightened investment into a stream to try to make big gains. Furthermore, if this concepts proves to be a success, there are a number of stretch goals that can be implemented to incentive more streamers and viewers to participate

  • Announcements can be made for big exchanges (users hitting the jackpot or hitting rock bottom)
  • Viewers may be given the ability to buy more points with bits to support the streamer
  • A live leader board can be displayed for viewers to show off who best knows the channel culture and the streamer's decision making capability
Share this project: