Octave ghcr.io/johagan94/octave:latest https://github.com/johagan94/octave/pkgs/container/octave bridge bash false http://[IP]:[PORT:8000] https://raw.githubusercontent.com/johagan94/octave/main/docs/logo.png Sync Spotify playlists into Jellyfin, request missing albums in Lidarr, and enrich matching with ListenBrainz and Last.fm. Browser-based setup — no config file editing needed. Octave keeps your Spotify playlists mirrored into Jellyfin with three sync modes (add-only, full-sync, rebuild), automatic cover art, missing-track reports, and optional Lidarr album requests. [b]Key features:[/b] [ul] [li]Spotify PKCE OAuth — connect via the web UI, no developer account required[/li] [li]Fuzzy track matching with configurable threshold[/li] [li]Parallel Lidarr album requests with per-artist state machine[/li] [li]ListenBrainz MusicBrainz ID resolution and Last.fm enrichment[/li] [li]Scheduled sync via cron, plus manual trigger from the dashboard[/li] [li]SQLite sync history, SSE log tail, missing tracks CSV export[/li] [li]HTTP Basic Auth for the web interface[/li] [li]All credentials configurable from the UI — no .env file required[/li] [/ul] [b]Setup:[/b] After starting the container, open the web UI, go to Settings, click [b]Sign in to Jellyfin[/b] and [b]Auto-detect URL[/b] to configure credentials automatically. Then click [b]Connect Spotify[/b] to authorize. See the README for full setup instructions. https://github.com/johagan94/octave/issues https://github.com/johagan94/octave https://raw.githubusercontent.com/johagan94/octave/main/README.md MediaApp:Music MediaServer:Music Tools:Utilities https://raw.githubusercontent.com/johagan94/octave/main/templates/octave.xml MIT spotify jellyfin lidarr sync playlist music listenbrainz lastfm 8000 /mnt/user/appdata/octave/config /mnt/user/appdata/octave/data /mnt/user/appdata/octave/logs octave 0 2 * * * false UTC INFO Full release notes and changelog for all versions: https://github.com/johagan94/octave/releases