Navidrome
A light music streaming server compatible with Subsonic apps
Navidrome turns your music folder into a personal streaming service with a web player and support for the Subsonic API, which many mobile and desktop apps speak. It is GPL-3.0, written in Go, and runs on very little.
Best for when
- you own a music collection and want to stream it to your phone
- you want a choice of client apps through the Subsonic API
- you want something light enough for small hardware
Watch out for
- the library is only as good as your tags, so expect cleanup work
- the best mobile experience comes from third party apps, some of them paid
- it does nothing for streaming catalogue discovery, it only plays what you own
Your music collection, streamed
If you own your music as files, Navidrome indexes the tags and serves the library through a modern web player. Because it implements the Subsonic API, you pick from a wide choice of client apps on phones and desktops, many with offline caching.
It handles large libraries well, transcodes on the fly for mobile data, and supports several users, each with their own playlists and favourites.
Small footprint, a few habits
It is a single Go binary or container that uses little RAM and CPU, so it fits next to everything else. The music folder can be mounted read only, and the small data folder with users and playlists is what to back up.
It trusts your tags. A messy collection produces a messy library, so tidy the tags first with a tool like MusicBrainz Picard. As with any media server, prefer a VPN to an open port for remote listening.