finds.dev← search

// the find

maxrave-dev/SimpMusic

★ 9,498 · Kotlin · GPL-3.0 · updated Jun 2026

A cross-platform music app using YouTube Music for backend

SimpMusic is a FOSS YouTube Music client for Android (and now desktop via Compose Multiplatform) that reverse-engineers YouTube Music's private APIs to provide ad-free playback, offline caching, synced lyrics, SponsorBlock, and Spotify Canvas. It's for developers and power users who want a fully-featured YouTube Music alternative without Google's surveillance or a Premium subscription. The desktop port is recent and still rough.

The KMP architecture with Compose Multiplatform is the genuinely interesting technical bet here — sharing UI logic across Android and desktop with platform-specific `expect/actual` implementations is non-trivial and they've pulled it off to a working degree. Lyrics aggregation from multiple sources (LRCLIB, Spotify, YouTube transcripts) with fuzzy matching by string similarity and duration is a practical solution to a hard metadata problem. The dependency inversion is solid — clean architecture with proper module separation (core/data/service layers visible in the dependency graph) rather than the typical spaghetti you see in hobby music apps. SponsorBlock and ReturnYouTubeDislike integration makes this meaningfully better than YouTube's own app for long-form content.

The entire app is built on undocumented, private APIs that Google hasn't authorized — one server-side change breaks everything, and this has already happened repeatedly (the README explicitly warns players errors are 'normal'). The desktop port is ARM64-broken on Windows/Linux and has JetBrains upstream stability issues on some Linux distros, which is a pretty rough state for a new platform target. Test coverage appears nonexistent — no test directories visible in the tree, which for an app with this much network scraping and state management is a real maintenance liability. The legal disclaimer section is doing a lot of wishful thinking; comparing scraping private APIs to using an ad blocker doesn't hold up legally, so anyone depending on this for daily use should expect periodic breakage.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →