V1.2.0/MACOS 26+/FREE FOREVER/OPEN SOURCE

YOUR MUSIC,live everywhere.

A tiny macOS menu bar app. Apple Music plays — Twitch chat, Discord Rich Presence, and your stream overlay update automatically. No account. No subscription. No phoning home.

LIVEMENU.BAR

Kbps Plz

DevBowzer

2:073:20
→ 3 OUTPUTS
APPLE MUSICTWITCHDISCORDOBSSONG REQUESTSWEBSOCKET APIMENU BAROPEN SOURCEAPPLE MUSICTWITCHDISCORDOBSSONG REQUESTSWEBSOCKET APIMENU BAROPEN SOURCEAPPLE MUSICTWITCHDISCORDOBSSONG REQUESTSWEBSOCKET APIMENU BAROPEN SOURCE
◉ 04 / FEATURES

One app.
Four integrations.
Zero fees.

Built native with Swift + AppKit. No Electron. No analytics. No cloud. Your music never leaves your Mac.

TWITCH EVENTSUB

Chat knows what you're playing.

Viewers type !song. The bot answers with exactly what's playing in Apple Music — title, artist, album. Under 100ms.

DevBowzer!song
WolfWaveNow playing: Kbps Plz — DevBowzer
viewer_42this slaps 🔥
DISCORD RPC

Rich Presence, your library.

Friends see “Listening to Apple Music” with album art and live progress. Like Spotify — but your full library.

LISTENING TO APPLE MUSIC

Kbps Plz

DevBowzer

WEBSOCKET

Stream overlay

Drop into OBS. Browser source. Or roll your own widget in 20 lines of HTML.

KEYCHAIN

Privacy first

Tokens in macOS Keychain. App Sandboxed. No telemetry. Ever.

V2.0
INCOMING

Song requests

Viewers queue tracks via chat. Approve, skip, block. Coming in v2.0.

◉ 03 / GETTING STARTED

Running in sixty seconds.

01

Download

Grab the DMG from GitHub Releases. 3.7MB — under a second on any connection.

02

Connect

One-time wizard links Twitch, Discord, and your overlay. No terminal.

03

Stream

Hit play in Apple Music. Chat, Discord, overlay — everything updates live.

◉ 05 / FOR DEVELOPERS

Hack the signal.

Native Swift. Zero external deps. The WebSocket feed is fully documented — build custom overlays, wire it into Home Assistant, or poke around the source.

ws://localhost:8080/now-playing
// 20 lines of HTML — that's the whole overlay
const ws = new WebSocket("ws://localhost:8080/now-playing");

ws.onmessage = (event) => {
  const { title, artist, artwork } = JSON.parse(event.data);
  document.querySelector("#title").textContent = title;
};
READY WHEN YOU ARE

Press play.
We handle the rest.

FREE FOREVERMACOS 26+NO ACCOUNT~3.7MBOPEN SOURCE