SBCanvas
SBCanvas is the overlay engine behind StreamBot. It runs inside an OBS Browser Source, connects to the backend over WebSocket, and renders alerts, chat, goals, and custom widgets. You write JavaScript against the globalSBCanvas object. The runtime handles connections, event normalization, and platform differences. Your widget code stays the same whether the streamer is on Kick, Rumble, or Blaze.
Quick Links
Quick Start
First widget in 5 minutes
Build a Widget
Step-by-step tutorial
SDK Reference
Full API docs
REST API
Push events from external systems
Platform Support
SBCanvas normalizes events from three streaming platforms into a unified API:- Kick — livestreaming platform with subs, tips, raids, hosts, and chat
- Rumble — video platform with rants (paid messages), subs, raids, and chat
- Blaze — streaming platform supported through StreamBot’s unified Activity model, with subs, tips, and chat
| Feature | Kick | Rumble | Blaze |
|---|---|---|---|
| Follows | Yes | Yes | Yes |
| Subscriptions | Yes | Yes | Yes |
| Gift Subs | Yes | Yes | Yes |
| Tips | Yes | No | Yes |
| Rants | No | Yes | No |
| Raids | Yes | Yes | No |
| Hosts | Yes | No | No |
| Chat Send | Yes | Yes | Yes |
| Emotes (native + 7TV/BTTV) | Yes | Yes | Yes |
How It Works
- The streamer adds their overlay URL as an OBS Browser Source
- The overlay connects to StreamBot’s backend via WebSocket
- When viewers follow, sub, tip, or chat, events arrive as typed
Activityobjects - Your widget code reacts to those events through
SBCanvas.activities.on() - You use
SBCanvas.storefor persistence,SBCanvas.http()for external APIs, and the rest of the SDK for effects, timers, and UI