Skip to content

Chat sentiment analysis

In this tutorial you learn about a real-time chat sentiment analysis application, using a Quix template project.

Sentiment analysis pipeline

Sentiment analysis is performed on chat messages. The project includes a chat UI, where you can type chat messages. You can also connect to Twitch and perform sentiment analysis on large volumes of messages.

You learn how to get the project, try out the UI, look more deeply into the UI and the sentiment analysis service, and then customize the UI.

Technologies used

Some of the technologies used by this template project are listed here.



Sentiment analysis:


Data warehousing:

GitHub repository

The complete code for this project can be found in the Quix GitHub repository.

Getting help

If you need any assistance while following the tutorial, we're here to help in the Quix Community.


To get started make sure you have a free Quix account.

Twitch API key

You'll also need an API key for the Twitch service (optional), if you want to try Twitch-related features.

BigQuery credentials

If you want to use the Quix BigQuery service (optional), you'll need to provide your credentials for accessing BigQuery.

Git provider

You also need to have a Git account. This could be GitHub, Bitbucket, GitLab, or any other Git provider you are familar with, and that supports SSH keys. The simplest option is to create a free GitHub account.


While this tutorial uses an external Git account, Quix can also provide a Quix-hosted Git solution using Gitea for your own projects. You can watch a video on how to create a project using Quix-hosted Git.

The pipeline

The main services in the pipeline are:

  1. UI - provides the chat UI, and shows the sentiment being applied to the chat messages.

  2. Sentiment analysis - uses the Hugging Face model to perform sentiment analysis on the chat messages. There is also a Drafts sentiment analysis service for messages being typed, but not yet sent.

  3. Twitch data source - An alternative to typing chat messages - you select a Twitch channel and then perform sentiment analysis on Twitch messages.

The parts of the tutorial

This tutorial is divided up into several parts, to make it a more manageable learning experience. The parts are summarized here:

  1. Get the project - you get the project up and running in your Quix account.

  2. Try the UI - you try the UI, typing in chat messages and observing the sentiment analysis in operation.

  3. Explore the UI service - explore UI service and gateways...

  4. Explore the sentiment analysis service - you take a closer look at the sentiment analysis service, its code, and messages.

  5. Explore ther Twitch service - you explore the service that interfaces Quix with Twitch using the Twitch API.

  6. Customize the UI - you carry out a simple customization to the chat UI on a feature branch, and then merge your changes onto the tutorial branch.

  7. Summary - you are presented with a summary of the work you have completed.

🏃‍♀️ Next step

Part 1 - Get the project