Hey everyone,
I’m new here! I wanted to share a music search and discovery tool for Lidarr. It plugs into Spotify, TIDAL, Deezer, Last.fm, MusicBrainz, Plex/Tautulli, Jellyfin, and even some AI recommendations.
GitHub: https://github.com/aquantumofdonuts/mixarr/releases/tag/latest
Website: https://aquantumofdonuts.github.io/mixarr/
What it does:
- Connects to Lidarr and analyzes your existing artists
- Hooks into Spotify, TIDAL, Deezer, Last.fm, MusicBrainz, Plex/Tautulli, and AI services
- Finds related/similar artists, new releases, charts, labels, playlists, etc.
- Gives you a review queue to approve or dismiss discovered artists
- Automatically adds approved artists to Lidarr with the profile you choose
- Has a universal search and discovery interface across all services
- Runs as a web app (Next.js frontend + Express backend) and plays nice with Docker
Why I built it:
I wanted one tool that I could point at my Lidarr library and get a steady stream of relevant artist recommendations.
Basically, make music discovery feel as automated and “infrastructure-y” as the rest of the *arr ecosystem.
Current status:
- Working with Lidarr + Spotify/TIDAL/Deezer/Last.fm/MusicBrainz + Plex/Tautulli
- Has subscriptions for different discovery sources (charts, playlists, related & followed artists, etc.)
- Docker-compose setup available, plus local dev if you prefer
- Early but usable; I’m actively using it myself and iterating
This sounds great. I will have to check it out when I’m back home. I have been missing a music discovery tool as I am trying to avoid using any of the corporate overlord algorithm machines.
Awesome! I hope you like it. I’ve successfully converted my household from Spotify to Plexamp using this. Setup a few subscriptions, let the new artists and recommendations roll in, and you have a constant stream of new music.
GitHub link is funky, need to remove the ()
Thank you. Link is fixed.
Nice. Couple of things:
- The link in your post is broken 😉
- Consider doing with Jellyfin anything you’ve done with Plex. Plex is on it’s way out, especially with Fediverse users.
I think the link is fixed now?
I will definitely take the Jellyfin suggestion to heart. Mixarr is Plex-centric because that’s what I use, but I see that Jellyfin has a large share as well. Thanks for the suggestion!
Bloody hell. From request to implementation in less than 10 hours?! Amazing.
Yup, link is golden now.
Might also consider looking into Navidrome support. Not sure if it’s even possible but in my experience Jellyfin’s music experience is kinda crappy.
Omg you are a saint. I was missing a tool like this. Will check it out ASAP.
Awesome, thank you. Hope you like it.
Is it possible to set this up with navidrome instead of lidarr?
Navidrome can scrobble to Listenbrainz which this supports.
Man, that would absolutely rock if it integrated with Navidrome.Navidrome can scrobble to Listenbrainz which this supports.
Do you know if it will work with SQLite? I’d like to try it but I hate spinning up more postgres instances
Hi, it might but I haven’t explored that. I’ll look into it. Would you want to roll your own SQLite, or just have that containerized instead of postgres?
SQLite doesnt require you to have any service running, the DB is just stored in a file which the program accesses through an SQLite library. I think its the best option for selfhosted software, as its very lightweight and more than performant enough for 99% of these use cases.
Performance isn’t the only advantage to a full postgres deployment. I have a central database for all of my self hosted apps which makes it really easy to back it all up.
I’ve had a lot of problems in the past from software crashes that left sqlite files in a corrupt state, backups where the sqlite file wasn’t properly closed leaving it in a weird unlockable state, transactions not completing when swap is used, etc. Besides that sqlite really doesn’t play nice with NFS, which is the basis for quite a few cloud storage providers.
“Best option” really depends on what self hosting looks like in your specific setup.
Yeah, I wasn’t trying to say SQLite is universally better. I shouldn’t have said best option, I really meant best default. I don’t think the majority of users are running a central db, most will just spin-up docker compose files for each service and end up with multiple SQL versions running.
I’ve had a lot of problems in the past from software crashes that left sqlite files in a corrupt state
I have had this issue, but it was always easily recoverable. I haven’t had the same issues with backups, although a lot of the software I use that’s running SQLite has a builtin backup feature, then I just backup that directory to a cloud service.
Besides that SQLite really doesn’t play nice with NFS, which is the basis for quite a few cloud storage providers. Also a good point, I just don’t think the majority of users are using NFS for their DBs.
When an app is using an ORM already, I think they might as well make sure it supports both SQLite and a hosted DB like Postgres
Was super interested right up until the AI recommendations bit.
I completely understand. Just one minor feature though, and it’s entirely optional. The real meat is in the “subscriptions”, which rely on more steadfast services like Last.fm and Spotify.
You might not like it, but AI can totally give you a recommendation of similar bands.
I can tell there are at least 5 people who didn’t like your suggestion. LMAO. But indeed, AI can do this and do it well. I put a few songs in and tell it to recommend similar Indie musicians. Works like a charm.
I’m OK with it as long as it’s not an LLM recommendation
Nope, LLM is not a requirement at all and is disabled by default.
deleted by creator
Looks cool. Any chance you’ll add Qobuz to the integration list in the future?
I have yet to try OP’s tool, but I already have Qobuz connected to Last.fm and subsequently ListenBrainz if that is any use?
Yes, that’s a perfect setup. You can point Mixarr at ListenBrainz or Last.fm and get recommendations, playlists, etc. based on your Qobuz scribbling.
Thanks! I will look into it. But as noted elsewhere, Qobuz is already indirectly supported via Last.fm or ListenBrainz scrobbling.
First off thank you so much this is exactly what I’ve been waiting for.
I looked at the compose file and it doesnt seem to have the base image in there, just the DB and web setup.
I’m not super experienced with docker but would love to deploy this through my dockstarter setup - am I missing something here, is there a way to get it up and running through compose now?
I released a Docker image. You can get it here: https://github.com/aquantumofdonuts/mixarr/releases/tag/v1.1.0
Let me know if you have any issues!
It should work with just docker compose up using the default docker-compose.yml. web and API containers comprise the app, and caddy serves the frontend. Give it a try, let me know if you get stuck!
You currently have to build the docker images. Instructions are in the repo
Docker image released here: https://github.com/aquantumofdonuts/mixarr/releases/tag/v1.1.0
I spin it up yesterday and you don’t need to compile anything, it’s quite straightforward.
Well I can’t judge yet, but I’ve installed it, and I’ll try it out tomorrow!
I think your URL to the github is a hyperlink back to this post…
Does it work with SoundCloud? I wanted to self host my library
Not currently, sorry. But I will look into adding that integration in the future
Just spun it a up earlier today, looks great! I’m wondering if maybe I’m misunderstanding how listenbrainz subs work. The explore subscription doesn’t pull in my users “weekly exploration” playlist, it’s totally unrelated songs it’s pulling. Although it does appear to pull in accurate listenbrainz artist recommendations
Interesting, that could be a bug. I’ll check it out. Thanks!
Sorry, which subscription specifically were you using? I’ll try to reproduce the behavior you’re seeing. Might be an easy fix.
Listenbrainz Explore

I just noticed there is an explore tab on listenbrainz, is that what this is supposed to pull from? I was thinking it was supposed to pull from the weekly exploration playlist listenbrainz creates.Ok, got it. Yes, this was a funky UI bug. There is now a ListenBrainz preset for Weekly Exploration, which pulls from the user’s playlist, and the “type” dropdown is disabled once you select a preset.
Please give it a try, let me know if that fixes the issue you were having. I updated the repo, you can pull and rebuild containers to get the changes.
Thanks!
working as expected now. Thanks! would you prefer feature requests on the github repo or here?
Great to hear! Feel free to post feature requests in either location, but github will tend to be preferred. Thank you!









