This is a small Windows extension that mirrors your currently playing track from Roon into Discord Rich Presence - title, artist, a live progress bar, and album art, shown as “Listening to…” on your Discord profile.
Setup (one-time, ~5 minutes):
1. Create a Discord Application ID at Discord Developer Portal (no bot/OAuth needed, just the ID) and paste it into config.json.
2. Double-click install.bat - installs dependencies, downloads cloudflared.exe (used for album art), and sets the app to auto-start on login.
3. In Roon, go to Settings > Extensions and enable “Discord Rich Presence” the first time it appears (Roon’s standard one-time pairing step).
After that it runs silently in the background and just works whenever Roon and Discord are both open, in either order.
A note on album art: Discord’s servers fetch the image from a public URL, but Roon’s cover art only exists on your own Core. So the app serves the art from a local web server and uses cloudflared (Cloudflare’s own tool, no account needed) to open a temporary public tunnel to it. That URL is random and changes every restart; anyone who has it can see your current track’s cover art while the app is running, nothing else is exposed. If you’d rather not do this, just delete cloudflared.exe - title/artist/elapsed time keep working, you just lose the art.
Requirements: Windows, Node.js 20+, Git (for npm install to pull Roon’s SDK packages), a Roon Core on the same network, and the Discord desktop app.
Feedback and issues welcome on GitHub.