← Back to archive

Repo of the Day

lklynet/aurral

Published: Aug 30, 2026

Open repository ↗

The best in open-source music discovery

Summary

Aurral is a self-hosted music discovery service written in JavaScript that runs as a Docker container and can operate on its own or alongside Lidarr. It bundles recommendations, playlist automation, library playback, and request/queue management into one web app, with integrations across many of the usual self-hosting pieces (Last.fm, ListenBrainz, Navidrome, Plex, Jellyfin, Prowlarr, yt-dlp, slskd, SABnzbd, NZBGet, deemix). The repository is MIT-licensed and ships container images from ghcr.io/lklynet/aurral.

What it is useful for

Engineers running a home media stack who want discovery features Lidarr does not provide. Concrete use cases documented in the README include:

  • Personal recommendations, trends, tag browsing, and artist news/regional shows on the Discover page.
  • Adopting existing discovery sources such as Release Radar, or importing playlists from Spotify, YouTube Music, Last.fm, and ListenBrainz, then converting "flows" into fixed tracklists.
  • Monitoring specific artists for new albums without routing everything through Lidarr, while still letting Lidarr manage the rest of the library.
  • Centralising download activity across yt-dlp, slskd, Usenet, and deemix with cancel/retry/upgrade controls and album Wanted views.
  • Publishing playlists to Navidrome, Plex, Plexamp, and Jellyfin, or streaming the library in-browser via Subsonic/OpenSubsonic clients such as Feishin and Music Assistant.

It also supports multi-user setups with profiles, per-user discovery layouts, permissions, and authentication via local password, LAN auto-login, reverse-proxy SSO, OIDC, Google, or Plex.

How engineers can use it

The README ships a minimal docker-compose.yml you can drop into a directory:

services:
  aurral:
    image: ghcr.io/lklynet/aurral:latest
    restart: unless-stopped
    ports:
      - "3001:3001"
    environment:
      - PUID=1000
      - PGID=1000
    volumes:
      - ${MEDIA_ROOT:-/srv/media}:/data
      - ./config:/config

Before running docker compose up -d, set MEDIA_ROOT to a real host path. If you already use Lidarr, the README is explicit: mount the same host folder Lidarr uses, keep /data as the container path, and reuse the same mapping for download clients and your media server. Aurral's Downloads Folder should then point to something like /data/downloads/aurral. After startup, open http://localhost:3001 to create the admin account and optionally connect Lidarr.

For the latest merged code, the README points to ghcr.io/lklynet/aurral:nightly, with a documented caveat that nightly builds can be less stable than releases. A fuller example stack including Lidarr, slskd, and Navidrome lives in docker-compose.example.yml; Plex users are directed to a dedicated setup guide. Full configuration details are not in the README itself, so anything not covered above should be looked up at docs.aurral.org.

The README also notes a hybrid development approach: foundations are hand-coded, while feature work follows developer-written specifications and any AI-generated code is reviewed before merge.