UniChat is a tool for streamers who broadcast on YouTube and Twitch, providing a chat widget with support for third-party emotes and customization via HTML/CSS/JS.
- Multi-platform: Support for Twitch and YouTube.
- Third-Party Emotes: Integration with BetterTTV, FrankerFaceZ, and 7TV.
- Chat Events: Full support for messages, donations, subscriptions, raids, and more.
- Customizable Widgets: Create and customize your own chat widgets using web technologies.
- Open Source: Licensed under MPL-2.0, allowing contributions and modifications.
You can download the latest version for Windows and Linux directly from the project's Releases page.
- Windows: Download the
.exeinstaller. - Linux: Choose the ideal package for your distribution (
.deb,.rpm, or.AppImage).
For users who wish to compile from the source code, instructions are available in the For Developers section.
- After launching the application, add the YouTube and/or Twitch channels you want to monitor.
- The application will generate a URL for the chat widget (You can open the URL by clicking the globe icon in the top right corner).
- Add this URL as a browser source in your streaming software (e.g., OBS Studio).
- Customize your widgets in the user's widgets folder, which you can access by clicking the folder icon in the top right corner.
Interested in contributing? Great! Here's the information you need to get started.
| Directory Type | Location on Linux | Location on Windows |
|---|---|---|
app_cache_dir |
~/.cache/unichat |
%localappdata%\unichat |
app_config_dir |
~/.config/unichat |
%appdata%\unichat |
app_data_dir |
~/.local/share/unichat |
%appdata%\unichat |
app_local_data_dir |
~/.local/share/unichat |
%localappdata%\unichat |
app_log_dir |
~/.local/share/unichat/logs |
%localappdata%\unichat\logs |
Prerequisites:
- Rust v1.87.0;
- Node.js v22.14.0;
- PNPM v10.7.1;
- Tauri v2 dependencies for your platform. Follow the official guide;
- Tauri CLI (You can install it with
cargo install tauri-cli --locked);
Steps to compile:
-
Install frontend dependencies:
pnpm --dir="./webapp" install --frozen-lockfile -
Compile and run the application:
cargo tauri build
Tip
If the build fails on macOS or Linux, try adding the NO_STRIP=true environment variable before the command. Ex: NO_STRIP=true cargo tauri build.
- Wayland: Tauri may have rendering and window scaling issues on Wayland. To work around this, run the application forcing the GDK backend to X11:
GDK_BACKEND="x11" cargo tauri dev
This project is licensed under the Mozilla Public License, Version 2.0. The example widgets located in the widgets/default folder are an exception and are licensed under the MIT License.