AI summary
Open-source Android music player for local files and self-hosted servers like Jellyfin and Navidrome/Subsonic. Streams or caches tracks for offline play with no ads, tracking, or telemetry. Early alpha with queue management, playlists, synced lyrics, Android Auto, and Chromecast support.
Generated by AI. May contain inaccuracies.
About this app
Linthra is an open-source Android music player for people who keep their music on their own devices or self-hosted servers. It plays local files, and it streams from self-hosted music servers such as Jellyfin and Navidrome/Subsonic — you bring your own server and sign in with your own account.
Linthra is an unofficial community client. It is not affiliated with Jellyfin, Navidrome, or Subsonic.
The app is still early alpha. It's usable for testing on a real device, but it isn't production-stable and has a few rough edges. The lists below separate what works today from what's still planned.
On privacy:
* No ads, no tracking, no analytics, and no crash-reporting or telemetry SDK. * No account to create, and nothing phones home — streaming is the default, and downloads only happen when you ask for them (Wi-Fi only unless you opt in to mobile data). * When you sign in to a server, the password is used once to get a session token, then dropped; the token is stored encrypted and never logged. * Open-source under the Mozilla Public License 2.0, so anyone can read, build, and contribute to it.
What works today:
* Local library — pick a folder with the Storage Access Framework (no broad storage permission), scan it, and browse Songs, Albums, and Artists with search. * Streaming from your own Jellyfin or Navidrome / Subsonic server: test the connection, sign in, sync, and play, including over HTTPS. * A smart offline cache — download tracks for offline play, with a size limit and a "Keep offline" pin. * Queue / Up Next, playlists and favourites (synced with Jellyfin where it's supported), and automatic "smart mixes" built from on-device signals. * Background playback with a media notification and lock-screen, Bluetooth, and wired-headset controls, plus shuffle / repeat and synced lyrics. * Android Auto browsing, and casting to a Chromecast, speaker, or TV through a pure-Dart Cast implementation (no Google Play Services).
What's new
- Compilation and collaboration albums stay together
- Linthra now prefers a provider-namespaced album ID when grouping tracks. Tracks from the same album remain grouped even when each track credits a different artist or collaborator. Jellyfin and Plex also use their album-artist metadata when available; local files use an embedded album-artist tag when present. Navidrome/Subsonic albums use the server-provided album ID without guessing an album artist. Existing catalogs and settings are preserved by an additive database migration. Allow or start a library sync after updating so existing tracks receive the new album metadata.
- A responsive album grid
- The Albums tab now shows two cover-focused columns on phones instead of one full-width row per album. Wider screens gain additional columns only when enough space is available. Album artwork remains square, while long titles and artist names are safely truncated. Tap and long-press behavior remains unchanged, including album navigation and bulk playlist actions. Layout and semantics adapt to larger text sizes and accessibility tools.
- System, Light, and Dark appearance modes
- Linthra now follows the phone's light or dark setting by default. Settings → Appearance includes explicit System, Light, and Dark choices. The selected mode is restored before the first frame, avoiding a theme flash at startup. Light palettes were retuned and tested for readable contrast while preserving Linthra's visual identity.
- Clearer first synchronization
- Empty-library screens now recognize active Jellyfin, Navidrome/Subsonic, and Plex synchronization. Linthra names the source being synchronized when one source is active, and uses a general message when several are active. Plex users are no longer shown the unrelated local-folder prompt while their server library is scanning. Navidrome/Subsonic users no longer see a misleading empty-catalog message while the first sync is still filling the library.
About this version
- Version
- 0.1.14 (114999)
- Size
- 28.89 MB
- Requires Android
- 5.0
- Target SDK
- 21
- Architecture
- arm64-v8a, armeabi-v7a, x86, x86_64
- Downloads
- 19
- Updated
- Aug 6, 2026
- Package
- io.github.thezupzup.linthra
Similar apps
Ratings & reviews
- 50
- 40
- 30
- 20
- 10