A desktop client for SoundCloud — system tray, mini player, media keys, and more.
SoundDesk wraps the full SoundCloud web experience in a native desktop shell, adding the OS integrations that the browser tab never had: global media keys, a persistent system tray, an always-on-top mini player, and automatic updates.
- Full SoundCloud — loads soundcloud.com in a persistent, sandboxed session so you stay logged in
- System tray — hide the main window and keep SoundDesk running in the background; play, pause, and skip from the tray menu
- Mini player — compact always-on-top overlay with artwork, scrolling title, progress bar, and playback controls
- Global media keys — play/pause, next, and previous track work from the keyboard even when SoundDesk is in the background
- Windows media integration — hooks into the Windows SMTC (System Media Transport Controls) so the lock screen and hardware volume keys work out of the box
- Auto-update — checks GitHub Releases on startup and prompts when a new version is available
- Offline overlay — a friendly fallback page when the network is unavailable
Download the latest release from the Releases page.
| Platform | File |
|---|---|
| Windows | SoundDesk-Setup-x.x.x.exe (NSIS installer) |
| Linux | SoundDesk-x.x.x.AppImage or sounddesk_x.x.x_amd64.deb |
Windows: Run the installer and launch SoundDesk from the Start menu or taskbar.
Linux (AppImage): Make the file executable and run it:
chmod +x SoundDesk-*.AppImage
./SoundDesk-*.AppImageLinux (.deb):
sudo dpkg -i sounddesk_*_amd64.debOn first launch, sign in to SoundCloud as usual — your session is saved locally and persists across restarts.
- Node.js 18+
- npm 9+
git clone https://github.com/Gianotto/SoundDesk.git
cd sounddesk
npm installnpm run devnpm run typechecknpm test # unit tests (Vitest)
npm run test:e2e # end-to-end smoke tests (Playwright + Electron)
npm run test:scraper # nightly SC DOM selector checknpm run build:win # Windows NSIS installer → release/
npm run build:linux # AppImage + .deb → release/Releases are built and published automatically by GitHub Actions when a version tag is pushed. Both Windows and Linux packages are attached to each GitHub Release.
- Full SoundCloud web experience in a native desktop shell
- System tray with playback controls
- Always-on-top mini player with scrolling track info and playback controls
- Global media keys (play/pause, next, previous)
- Windows SMTC integration (lock screen, hardware media buttons)
- Auto-updater via GitHub Releases
- Offline fallback page
| Layer | Technology |
|---|---|
| Shell | Electron |
| Bundler | electron-vite |
| Language | TypeScript |
| Packaging | electron-builder |
| Updates | electron-updater |
| Tests | Vitest + Playwright |
MIT © gianotto