Stream Dashboard

Connect Twitch once — overlays keep working forever.

1Twitch Developer Application

Create a free app at dev.twitch.tv/console → OAuth Redirect URLs: (add both localhost + prod later), Category: Chat Bot.

2Vercel env vars

  • TWITCH_CLIENT_ID — from step 1
  • TWITCH_CLIENT_SECRET — from step 1
  • TWITCH_GRANT — from step 3 below
  • OVERLAY_KEY — any long random string

3Authorize & generate TWITCH_GRANT

Grants: moderator:read:followers, bits:read, channel:read:subscriptions, user:read:chat, moderator:read:chatters, channel:read:redemptions

Login with Twitch →

requires TWITCH_CLIENT_ID + SECRET on the server, and the callback URL registered in your Twitch app:
/api/auth/twitch/callback

4Channel status

loading…

5Your OBS overlay URLs

appended as ?key= — keep it secret
Main/overlays/main
Just Talking/overlays/talk
Starting Soon/overlays/starting
BRB/overlays/brb
Ending Soon/overlays/ending
Chat/overlays/chat
Goal Bar/overlays/goal

In OBS: Sources → + → Browser → paste URL, 1920×1080, tick “Shutdown source when not visible” OFF, custom CSS not needed.