This is a playground of a new chatting client. It currently only supports twitch, but the goal is to expand support for other sites such as youtube, etc. It is very very early in development.
- Sending messages
- Message parsing with badges, emotes, and colored usernames
- Third-party emote support (7TV, BTTV, FFZ)
- Followed channels sidebar with live status
- Auto-updater
- Message history
- Moderation tools
- YouTube support
Right now when it comes to chatting on live content sites, the usablity and features of the different site chats vary wildly. When watching on Twitch you have some options for improving this experience with extension such as FFZ, BTTV, and 7tv, but as of now that's limited to the browser. Chatterino is a great desktop client, that can be injected into the browser. However, it's pretty much the sole option.
This was mostly born out of a want for myself. I wanted a clean chatting UI that was consistent across web, desktop, and mobile. We'll see if I can actually accomplish that.
It has already gone through one major overhaul, which you can go back and see the code here and what it looked like here
Download the latest release for your platform from the GitHub Releases page.
| Platform | File |
|---|---|
| macOS | Pepo_x.x.x_universal.dmg |
| Windows | Pepo_x.x.x_x64-setup.exe |
| Linux (Arch/CachyOS) | pepo-x.x.x-r-x86_64.pkg.tar.zst |
| Linux (Debian/Ubuntu) | Pepo_x.x.x_amd64.deb |
| Linux (Fedora/RHEL) | Pepo-x.x.x-1.x86_64.rpm |
| Linux (AppImage) | Pepo_x.x.x_amd64.AppImage |
DEB, RPM, and AppImage installations can update in place. Pacman-managed installations notify you
about new versions and open the pepo-bin AUR page
so your package manager remains responsible for installation.
Install pepo-bin with an AUR helper:
paru -S pepo-binOr build it with the standard AUR workflow:
git clone https://aur.archlinux.org/pepo-bin.git
cd pepo-bin
makepkg -siRequires Rust, Node.js,
pnpm, GNU Make, and toke. Arch-family builds also require Docker or Podman.
git clone --recurse-submodules https://github.com/synthlabs/pepo.git
cd pepo
pnpm install
make build
make installmake build creates an NSIS installer on Windows, a DEB on Debian-family Linux, and an x86_64
pacman package on Arch-family Linux. Other platforms keep Tauri's normal bundle behavior.
make install builds first, then installs that artifact. Linux package installation uses sudo
and runs apt-get or pacman without a package confirmation prompt; the Windows installer displays
its normal UI and make waits for it to finish.
Internal builds have matching commands:
make build-internal
make install-internalTo install an existing local artifact without rebuilding, pass any local path with the expected platform extension:
make install TAURI_PACKAGING_INSTALL_ARTIFACT=/path/to/Pepo.debWindows and Debian-family builds use the host's native architecture. Arch-family build and install
support is currently limited to x86_64. make install is not yet available on macOS, RPM-family
Linux, or generic AppImage systems.
Tauri bundles are written under target/release/bundle/; Arch packages are written to package/.
Pepo defaults to info logs for app code and suppresses noisy dependency debug logs. During development, set PEPO_LOG before starting Tauri:
$env:PEPO_LOG = "debug"
pnpm tauri devOn macOS and Linux shells:
PEPO_LOG=debug pnpm tauri devUse PEPO_LOG=trace when you need hot-path chat parser and emote-cache lookup details. Desktop logs are written under the app log directory:
| Platform | Log directory |
|---|---|
| macOS | ~/Library/Logs/com.pepo.chat |
| Windows | %LOCALAPPDATA%\com.pepo.chat\logs |
| Linux | ${XDG_DATA_HOME:-~/.local/share}/com.pepo.chat/logs |
Due to my essentially zero experience with front end testing, the tests for this project were generated with claude

