*AI-powered music discovery for your arr stack. Connect your listening sources (ListenBrainz, Last.fm, Spotify, Plex, Jellyfin, Discogs), pick an AI provider, and Digarr builds a taste profile, discovers new artists through a 7-stage pipeline, and scores them with a weighted formula that learns from your feedback. Approve what you like -- artists go straight to Lidarr, Spotify playlists, or your media server. Describe a mood in plain English and get instant results. Set up subscriptions that discover new music on a schedule while you sleep. Generate weekly digest playlists automatically. Browse your library by genre with deep-cut discovery. All self-hosted, all yours.
Beta software -- working toward v1.0. Usable and actively developed, but expect rough edges. Things move fast during the beta -- there may be several releases per day with bug fixes, new features, and improvements. Check the releases page frequently and read the release notes before updating. We'd love your help: set it up, break things, report issues, and share your feature ideas.
Free and open source, forever. No tracking, no telemetry, no data collection -- your music taste stays on your server.
Note
Built with AI. Digarr is built with the help of agentic AI coding tools. A human drives the roadmap, designs the architecture, makes every feature decision, and reviews the output -- but the code and tests are largely AI-generated. All output is reviewed for security issues and generic AI slop before it ships. This is stated upfront because transparency matters. If that's a dealbreaker for you, no hard feelings.
Not just "here are similar artists." Digarr collects your taste from up to 6 sources, asks an AI to reason about what you'd like and why, scores candidates with a configurable weighted formula, deduplicates across batches, and learns from your approve/reject feedback over time.
Type "something like Boards of Canada but darker" or "upbeat 90s pop for a road trip" and get instant AI-powered results. No menus, no filters -- just plain English.
Generate curated playlists from your approved recommendations and push them to Navidrome, Jellyfin, Plex, or export as M3U/XSPF. Four strategies: Weekly Digest, Genre Focus, Mood Mix, and Rediscover.
Anthropic, OpenAI, Google Gemini, Ollama (local, free), or any OpenAI-compatible endpoint. Every recommendation includes a written explanation of why the artist matches your taste.
Works without Lidarr in pure discovery mode. When connected, approved artists get added with your preferred quality/metadata profiles. Also supports Spotify playlist, Navidrome, Jellyfin, and Plex as approval targets.
Search for artists across Spotify, Deezer, MusicBrainz, TIDAL, and Bandcamp simultaneously. Results are deduplicated and merged. One-click Quick Discover on any result.
- 6 data sources -- ListenBrainz, Last.fm, Spotify (OAuth), Plex, Jellyfin, Discogs
- Smart scoring -- weighted composite: consensus, similarity, genre overlap, AI confidence, feedback learning, popularity
- Auto-approve -- automatically add high-scoring recs to your targets
- Subscriptions -- scheduled discovery from Spotify playlists/charts, Last.fm tags/charts, ListenBrainz feeds, genre searches, similar-artist seeds
- Genre deep dive -- browse by genre with Recommended, Trending, and Deep Cuts tabs
- Library health -- 6 automated checks with one-click batch fixes
- Analytics -- approval rates, genre trends, source effectiveness, score distribution, time-to-act
- Top tracks -- Deezer 30-sec previews on recommendation cards with MusicBrainz fallback
- Decade filtering -- filter recommendations by era (60s through 20s+) with toggle pills
- Music previews -- Spotify embeds, Deezer clips, YouTube on recommendation cards
- OIDC/SSO + multi-user -- per-user queues, sources, scoring weights, and target configs
- Swipe-to-approve on mobile, card-stack mode on desktop
- Webhook notifications -- Discord, Slack, ntfy, Gotify, or any HTTP endpoint
- 15 color themes -- editor classics + streaming-service-inspired *arr themes, dark and light
- Export -- JSON, CSV, M3U, XSPF
- Self-hosted -- single container, runs alongside your existing *arr stack
mkdir digarr && cd digarr
curl -LO https://raw.githubusercontent.com/iuliandita/digarr/main/deploy/docker/docker-compose.yml
curl -LO https://raw.githubusercontent.com/iuliandita/digarr/main/deploy/docker/.env.example
cp .env.example .env
# Edit .env -- set DB_PASS at minimum
docker compose up -dOpen http://localhost:3000 and complete the setup wizard. Alternatively, fill in the service env vars in .env and setup completes automatically on first boot. Database migrations run automatically on every startup.
For local development, see CONTRIBUTING.md.
Digarr runs a 7-stage recommendation pipeline:
- Collect -- fetches your Lidarr library (or skips in discovery mode)
- Analyze -- builds a taste profile from all connected sources
- Discover -- queries Last.fm similar, Discogs genres, AI recommendations, and library seeds
- Resolve -- validates against MusicBrainz, fetches metadata/images, genre-aware disambiguation
- Score -- weighted composite formula with configurable weights
- Filter -- removes library duplicates, rejected artists (with cooldown), low scores
- Store -- persists batch and recommendations
Runs on a cron schedule, manually, or via subscriptions for targeted discovery.
| Service | Required | Purpose |
|---|---|---|
| Lidarr | Optional | Music library management + auto-download |
| Listening source | At least one | ListenBrainz, Last.fm, Spotify, Plex, Jellyfin, or Discogs |
| AI Provider | Yes | Anthropic, OpenAI, Gemini, Ollama, or any compatible endpoint |
| PostgreSQL | Yes | Data storage (included in Docker Compose) |
All configuration is done through the web UI after initial setup -- connections, scoring weights, cron schedule, and preferences are all set there. See .env.example for the full list of environment variable fallbacks (useful for zero-touch Docker deployments).
| Method | Path | Notes |
|---|---|---|
| Docker Compose | deploy/docker/ |
Recommended. Includes PostgreSQL. Also on Docker Hub. |
| Helm chart | deploy/helm/digarr/ |
Kubernetes. Bundled PostgreSQL or bring your own. |
| Raw k8s manifests | deploy/k8s/ |
Reference manifests for advanced setups. |
| Unraid | deploy/unraid/ |
Community Applications template. Requires external PostgreSQL. |
| Synology NAS | docs/guides/synology.md |
DSM 7.1+ (Docker/Container Manager). SSH or GUI. |
| Docker Desktop | docs/guides/docker-desktop.md |
macOS and Windows (WSL 2). |
Other self-hosted music discovery projects worth checking out -- each takes a different approach:
| Project | Approach |
|---|---|
| Lidify | The OG. Lidarr library + Last.fm similar artists. Simple, focused. |
| Aurral | Last.fm tag similarity + Weekly Flow playlists via Soulseek/Navidrome. |
| MixArr | 56 subscription types across 12 services. Widest net in the space. |
| Curatorr | Behavior-first. Scores artists on skips/play completion, not tags. |
| Brainarr | Native Lidarr plugin. Privacy-first with local AI. |
| Sonobarr | Last.fm discovery with optional AI assistant. Real-time UI. |
| Explo | Discover Weekly for self-hosted. ListenBrainz recs to your media server. |
| MusicMoveArr Datasets | MB/Spotify/Deezer/Tidal datasets -- used by Digarr for genre enrichment. |
See CONTRIBUTING.md.
MIT -- see LICENSE.

