streamer-widgets/README.md

44 lines
1.4 KiB
Markdown

## Streamer Widgets (OBS Browser Sources)
This app runs a **single local web server** that hosts multiple streamer widgets on **one port**, and pushes updates via **WebSockets**.
### Available Widgets
- **Now Playing**: Display currently playing music from Windows Media
- **Live Chat**: Display Twitch and YouTube live chat with emote support (FFZ, BTTV, 7TV)
### Run (dev)
```bash
uv sync
uv run streamer-widgets --tray
```
Then add as OBS Browser Sources:
- **Now Playing**: `http://127.0.0.1:8765/widgets/nowplaying/`
- **Live Chat**: `http://127.0.0.1:8765/widgets/livechat/`
- **Configuration**: `http://127.0.0.1:8765/config`
### Live Chat Setup
See [CHAT_SETUP.md](CHAT_SETUP.md) for detailed instructions on:
- Connecting to Twitch and YouTube
- Setting up OAuth authentication
- Configuring emote providers (FFZ, BTTV, 7TV)
- Customizing the chat widget
### Build a standalone `.exe` (PyInstaller)
```bash
uv sync --group build
pyinstaller --noconsole --onefile --name streamer-widgets ^
--add-data "app/assets/web;app/assets/web" ^
run_tray.py
```
The executable will be in `dist/streamer-widgets.exe`.
**For end users:** Configuration files are stored in `%LOCALAPPDATA%\StreamerWidgets\`. The app auto-creates a config template on first run. Use the config UI at http://127.0.0.1:8765/config to open the config directory and set up OAuth credentials.