Last week, I set-up a navidrome (docker compose) server after tagging my files with MusicBrainz and beets. I serve it over a private network (tailnet) using tailscale serve. It works on all my devices and on iOS with an app called Nautiline. Nautiline has a feature where it will switch between my local network address and my tailnet address seamlessly. It was so simple, I can't actually believe it works. It has CarPlay support and everything. A few clicks and I'm jamming and scrobbling to MusicBrainz. My next goal is to have a local LLM generate smart playlists. Everyone who wants off Spotify, or the other streaming music giants should do this.
Fabulous! Now just imagine if it supported video too... It would be some kind of... VideoLAN!