shadowdaoandClaude Opus 5 d8107a06c2 Add Linux AppImage build target and app icon
The build config only had a Windows target. Adds a linux block producing
an AppImage, plus a 512x512 build/icon.png so the packaged app does not
ship with the stock Electron icon.

Verified by running the packaged binary: the embedded server comes up on
9095 and serves the overlay from process.resourcesPath, confirming the
extraResources mapping works in a packaged build.

StartupWMClass is deliberately not set via linux.desktop -- electron-builder
already emits the correct value, and the nested { entry: {...} } form leaks a
literal "entry=[object Object]" line into the .desktop file.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-28 17:54:05 -07:00
2026-04-26 10:40:55 -07:00

What's That Music

A desktop app that plays YouTube Music and serves a now-playing overlay for OBS.

The app is a single Electron window that loads music.youtube.com. It also runs a small HTTP/WebSocket server on localhost:9095 that streams the current track to any connected overlay client. Point OBS (or any browser) at http://localhost:9095/ to see the overlay.

Run from source

cd desktop-client
npm install
npm start

The app opens. Sign in to YouTube Music. Play a track. Visit http://localhost:9095/ in another browser to see the overlay.

Build a Windows zip

cd desktop-client
npm run build -- --win zip --x64

Output: desktop-client/dist/WhatsThatMusic-<version>-win.zip. Unzip on a Windows machine and run WhatsThatMusic.exe. The app is unsigned, so SmartScreen will warn on first launch — click "More info → Run anyway."

OBS setup

  1. Add a Browser Source.
  2. URL: http://localhost:9095/.
  3. Width / height: match your scene (the overlay positions itself absolutely; 1920x1080 is fine).
  4. Make sure the app is running before OBS loads the source.

Tests

cd desktop-client
npm test

Runs the node:test unit suite (desktop-client/tests/).

Layout

  • desktop-client/ — the Electron app (main entry, server module, preload scraper, tray).
  • overlay/ — static HTML + JS the bundled server serves at /.
  • docs/superpowers/ — design and plan documents.
S
Description
No description provided
Readme
316 KiB
v1.0.1
Latest
2026-10-04 18:37:51 +00:00
Languages
JavaScript 64.8%
HTML 23.9%
Shell 11.3%