Limusic
Native desktop YouTube Music client, no Electron.
- Tauri 2
- Rust
- SvelteKit
- libmpv
01 · what it is
Limusic is a desktop YouTube Music client that actually runs native. No Electron, no bundled Chromium, no few hundred megabytes of RAM sitting idle in the background. It's a Tauri 2 app with a Rust core and a SvelteKit interface, and it plays audio through libmpv instead of a web player, which is what lets it run ad-free and gapless.
02 · how it works
No backend, anywhere
The app talks straight to YouTube's private InnerTube API. That API guards its stream URLs with a signature cipher and an n-parameter transform, both of which are JavaScript that ships with the player page and changes without warning. Limusic solves them the only way that works with no server involved: it loads the player script in a hidden webview and evaluates the transforms in place. Nothing about playback routes through a machine I own.
A playback pipeline that repairs itself
Ciphers break and client identities get throttled. Instead of surfacing a dead track, the pipeline retries across several client identities, and when it notices a transform has stopped producing valid URLs it re-extracts the cipher and tries again. Most of the time the listener never finds out anything went wrong.
Native where it counts
libmpv handles gapless playback. MPRIS on Linux and SMTC on Windows wire up the real OS media keys, so lock screens and keyboard controls behave like they would for any other native player. Last.fm scrobbling and Discord Rich Presence ride on the same playback events.
03 · what I learned
Most of the difficulty here was never the audio. It was building against an interface with no contract and no changelog. That pushed me to design for failure first: assume any given request path will break, make the recovery automatic, keep the user out of it. I also came away with a much sharper sense of what shipping a browser costs you, in memory and in startup time, when all you wanted to do was play a song.