Knowing if the viewers like watching your stream and what moments they enjoy is essential for gaining good audience, but reading chat while playing to know viewers’ mood can distract from the game.
What it does
For a streamer I've build a twitch extension that can be installed on a channel as a video overlay. The watchers interact with the extension sending emojis at the moments they like or dislike. And for the streamer the extension shows the current feelings of the audience, the reactions to wins and fails as they are happening in the game. And moreover with emojis viewers send Twitch Bits which are shared afterwards with the streamer and the extension creator making this extension profitable for both.
How I built it
The extension backend is running fully on AWS serverless architecture. The extension connects to the Websocket API powered by the AWS API Gateway and the API calls are processed by Lambda nodejs functions storing data in the DynamoDB. I've created the project with AWS CodeStar, so even more AWS services are used: CodeCommit, CodeBuild and CodePipeline for code storage, build and delivery. And the project itself is a CloudFormation template configuring all the necessary services.
Challenges I ran into
Had never used all these services before so making it all work altogether was quite challenging.
Accomplishments that I'm proud of
The backend is ready to serve as many users as the extension can attract and I am looking forward to see the serverless architecture autoscaling under the severe load+)