A Twitch channel points-powered spin wheel for your stream. When a viewer redeems a configured reward, the wheel spins live in OBS and lands on a random challenge for you to complete.
Live: dexteritycs.github.io/Challenge-Wheel/
- Connects to Twitch via EventSub WebSocket — no polling, instant redemption triggers
- Configurable wheel segments — add, remove, and weight challenges however you like
- Reward name filter — only a specific channel points reward triggers the spin
- Config panel accessible via
?config=1URL param or pressingC - All credentials and settings stored in URL hash for SLOBS browser source compatibility
- Visual spin animation with landing indicator and challenge card reveal
- Manual spin shortcut (
S) for testing without a redeem
- Go to dev.twitch.tv/console
- Click Register Your Application
- Set OAuth Redirect URL to:
https://dexteritycs.github.io/Challenge-Wheel/ - Copy your Client ID
- Open
https://dexteritycs.github.io/Challenge-Wheel/?config=1in Chrome - Enter your Client ID and Twitch channel name
- Click Connect with Twitch and authorize
- In Reward name filter, type the exact name of your channel points reward (e.g.
Spin the Wheel) - Add your wheel segments in the challenges list
- Click Save & Apply — the status bar should show Connected · #yourchannel
- Add a Browser Source
- URL:
https://dexteritycs.github.io/Challenge-Wheel/(with the hash token appended after saving config) - Width:
800| Height:800 - Check Refresh browser when scene becomes active
- Twitch Dashboard → Viewer Rewards → Channel Points → Manage Rewards
- Create a new reward with the same name you put in the Reward name filter field
- Set your desired point cost and save
| Key | Action |
|---|---|
S |
Manual spin (for testing) |
C |
Open config panel |
Esc |
Dismiss challenge card |
- Vanilla HTML/CSS/JS — no dependencies
- Twitch EventSub WebSocket API for real-time redemption events
- Twitch OAuth Implicit Grant flow (token in URL hash for SLOBS)