ONLINE · LILDUDE AVATAR · 2026 · IN PROGRESS
SEOCUBO.OS v7.0APP · DEV.project · lildude-avatar
~ / home / seocubo / devMENU
HOME/dev·VISTA: CASE STUDY1 MIN READThree.js · FastAPI · WebSockets
DEV / PROJECT — 2026

LilDude Avatar

A transparent, mic-reactive 3D avatar for streaming — drop it into OBS or float it on your desktop.

← ALL PROJECTS
STATUS
IN PROGRESS
YEAR
2026
ROLE
Solo developer
Three.jsFastAPIWebSocketsPySide6Twitch

Overview

LilDude Avatar is a transparent, mic-reactive 3D "lil dude" you can put on stream. It runs two ways: as an OBS browser-source overlay, or as a floating always-on-top desktop window. A separate control panel drives emotes and live tuning while the avatar reacts to your microphone and to your Twitch chat.

Hub-and-spoke architecture

At the center is a FastAPI hub running on localhost port 8765 that brokers WebSocket messages between three clients: the overlay (a three.js renderer that draws the .glb avatar), the control panel (plain HTML/JS), and the desktop app. Because everything talks over WebSockets through one hub, the control panel can drive the avatar identically whether it is embedded in OBS or floating on the desktop.

Microphone levels are captured with sounddevice and streamed to the renderer to drive the avatar's mouth and motion. Twitch chat integration is handled with a vendored copy of tmi.js so chat events can trigger reactions.

Two deployment modes, one codebase

The desktop version wraps the same web overlay in a PySide6 / QtWebEngine window, so streamers who do not use OBS browser sources still get the avatar. A PyInstaller spec builds a self-contained Windows .exe, so the whole thing can be handed to a non-technical user as a single download rather than a Python environment to set up.

Status

The hub, overlay, control panel, desktop window, and Twitch integration all work. Ongoing work is on the emote system, avatar tuning, and packaging polish.

MORE PROJECTS