Sign inSign up

mralexandersaavedra/spotiarr

By mralexandersaavedra

โ€ขUpdated 3 months ago

Automate music downloads from Spotify playlists to your media server.

Image
Content management system
0

10K+

mralexandersaavedra/spotiarr repository overview

โ SpotiArr (Docker)

SpotiArr Logo
โ Self-hosted Spotify downloader with Jellyfin/Plex integration

View on GitHub ยปโ 


SpotiArr is a self-hosted tool inspired by the *arr suite (like Lidarr), designed to automate the downloading and synchronization of music from Spotify playlists to your local media server (Jellyfin, Plex, Navidrome, etc.).

โ โœจ Features
  • Smart Downloads: Paste any Spotify URL (track/album/playlist) and download with metadata.
  • Auto-Sync Playlists: Subscribe to playlists for automatic updates when new tracks are added.
  • Jellyfin-Ready: Generates organized folder structures (Artist/Album/) and M3U playlists automatically.
  • Rich Metadata: Automatic tagging (artist, album, year, lyrics, and embedded cover art).
  • Modern UI: Responsive dashboard to manage your library and view real-time progress.
  • High Quality: Uses yt-dlp to find the best matching audio source.
โ ๐Ÿš€ Quick Start (Docker Compose)

The easiest way to run SpotiArr is with Docker Compose. It requires a Redis instance to handle the download queues.

  1. Create a docker-compose.yml file:
services:
  spotiarr:
    image: mralexandersaavedra/spotiarr:latest
    container_name: spotiarr
    restart: unless-stopped
    ports:
      - "3000:3000"
    volumes:
      - ./config:/spotiarr/config
      - ./downloads:/downloads
    environment:
      - SPOTIFY_CLIENT_ID=your_client_id
      - SPOTIFY_CLIENT_SECRET=your_client_secret
      # Public IP or Domain where SpotiArr will be accessed.
      # Required for Spotify Auth Redirect.
      - PUBLIC_HOST=192.168.1.50 
    depends_on:
      - redis

  redis:
    image: redis:7-alpine
    container_name: spotiarr-redis
    restart: unless-stopped
    volumes:
      - redis-data:/data

volumes:
  redis-data:

2.Run the container:

docker compose up -d

3.Access the dashboard at https://<YOUR_IP>:3000. Note: On the first run, you will see a self-signed certificate warning because SpotiArr generates secure HTTPS certificates automatically for Spotify OAuth compatibility.

โ โš™๏ธ Configuration
โ Spotify Credentials (Required)

You need to create a Spotify App to get these credentials:

  1. Go to Spotify Developer Dashboardโ .
  2. Create an app and copy the Client ID and Client Secret.
  3. Add the Redirect URI in your Spotify App settings: https://<YOUR_HOST>:3000/api/auth/spotify/callback.
โ Environment Variables
VariableDescriptionDefault
SPOTIFY_CLIENT_IDRequired. Your Spotify Application Client ID.-
SPOTIFY_CLIENT_SECRETRequired. Your Spotify Application Client Secret.-
PUBLIC_HOSTThe IP address or domain name where you access SpotiArr.localhost
TZTimezone for logs and scheduling (e.g., America/New_York).UTC
โ Volumes
VolumeDescription
/spotiarr/configStores the SQLite database, settings, and generated certificates.
/downloadsWhere your music files and covers will be saved. Map this to your media library.
โ ๐Ÿท๏ธ Tags
  • latest: The latest stable release.
  • v0.1.1: Specific version tags (immutable).
  • 0.1: Latest minor version updates.

Tag summary

Content type

Image

Digest

sha256:e1173215bโ€ฆ

Size

201.9 MB

Last updated

3 months ago

docker pull mralexandersaavedra/spotiarr