Pick your music source
In Rotation settings → Music Source, choose how requests play. Spotify pushes to your Spotify queue (Premium). Free with no accounts: YouTube plays requests right inside the overlay (audio through your OBS browser source), and Apple Music plays through Cider. A free desktop Apple Music app that uses your own subscription; a "Test Cider connection" button confirms the link before you go live. Last.fm and YouTube Music (via YTMDesktop) are also supported for now-playing.
Connect Spotify
- 1
Open aquilo.gg/rotation
Pick a profile name (any string, used to namespace your widget's config and OAuth tokens).
- 2
Sign in to Spotify
Spotify OAuth, read-only scope. Rotation can only see what's playing + add to your queue. It can't see your library, change devices, or pause playback.
- 3
Done
Track changes appear in real time. Widget auto-reconnects on token expiry.
OBS browser source
Each view (widget, now-playing, queue, moderator, config) has its own URL. Pick one, drop into OBS as a Browser Source.
- /widget
- The full widget, album art, title, progress bar, command ticker.
- /now-playing
- Just the now-playing pill, compact horizontal bar.
- /queue
- Visible up-next list, what viewers requested next.
- /moderator
- Mod panel, approve / skip / mute requests before they hit Spotify.
- /config
- Live preview + every toggle.
Append ?sync=<key> to any view URL. Rotation pulls config + tokens from the sync worker before reading localStorage. Two boxes (stream PC + OBS box) stay in lock-step.
Viewer commands
Cross-platform, these all work from Twitch, YouTube, TikTok, and Kick chat (bridged via Streamer.bot).
- !sr <track>
- Request a song. Mod queue gates approval before Spotify gets it.
- !sr <Spotify URL>
- Direct request, no fuzzy match. Pasting a track URL is fastest.
- !queue
- Show the up-next queue on-screen for ~6 seconds.
- !np
- Reply with what's currently playing.
- !skip
- Vote-skip, needs N viewers within a window (configurable).
- !fav
- Mark the current track as a favorite. Tracks favorited often get auto-requeued during auto-DJ idle.
Mod queue
Open /moderator in a browser tab while streaming. Every !sr arrives there first. Approve to push to Spotify, skip to drop without touching Spotify.
Settings → Trust List. Add Twitch / YouTube / TikTok handles to skip the manual approve step for those viewers, their !sr lands in Spotify directly.
URL params
Any preset can be overridden via URL. Drop a preset + flags into your OBS browser source URL and the widget loads with those settings, no config UI needed.
aquilo.gg/rotation/widget?preset=vertical&ticker=1&queue=0&lyrics=0- ?preset=
- vertical | square | minimal | album-hero | retro | neon
- ?ticker=0|1
- Command ticker on or off
- ?queue=0|1
- Visible up-next queue on or off
- ?lyrics=0|1
- Synced lyrics on or off
- ?profile=
- Use a specific config profile (defaults to 'default')
- ?sync=
- Pull config from the sync worker on boot, multi-machine setups
Branded themes
Branded variants, Synthwave, Aurora, Pixel, are free for everyone, along with the ability to publish your own theme to the marketplace.
- Apply: Config → Themes → pick → Save
- Customize: every color / font / radius / opacity is a CSS variable in the config UI
- Export: download a JSON; share with another streamer to apply with one click
Still stuck?
Community live chat is the fastest way to get unstuck. Ask right on the community page, live help during streams.
Open the community