Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Spotify's "Discover Weekly" for self-hosted music systems

License

NotificationsYou must be signed in to change notification settings

LumePart/Explo

Repository files navigation

Explo is an alternative to Spotify's "Discover Weekly". It automates music discovery by downloading recommended tracks based on your listening history. UsingListenBrainz for recommendations and Youtube for downloading.

Explo offers two discovery modes:

  1. Playlist Discovery (default): Retrieves songs from a ListenBrainz-generated playlist.
  2. API Discovery: Uses the ListenBrainz API for recommendations (Note: API recommendations don't update often).

Features

  • SupportsEmby,Jellyfin,MPD,Plex andSubsonic-API-based systems.
  • Automatically fetches recommendations and downloads the tracks.
  • Adds metadata (title, artist, album) to the downloaded files.
  • Creates a "Discover Weekly" playlist with the latest songs.
  • Keeps past playlists by default for easy access.

Getting Started

Prerequisites

Installation

Docker

  1. Downloaddocker-compose.yaml file to your system and configure volume mappings
  2. Make a.env file in the directory defined in docker-compose and configure it (refer to sample.env for options)
  3. Launch the container withdocker compose up -d

Binary

Make sure ffmpeg and yt-dlp are installed on the system and accessible via $PATH. Alternatively, you can specify their paths in the.env file.

  1. Download thelatest release and ensure it's executable
  2. Make a.env file in the same directory as the binary and configure it (refer to sample.env for options)
  3. Add a Cron job to run Explo weekly:
crontab -e

Insert this to the last line to execute Explo every tuesday at 00:15 (ListenBrainz updates its discovery database on Mondays)

15 0** 2cd /path/to/explo&& ./explo-linux-amd64

PS! To test if everything is correct changeLISTENBRAINZ_DISCOVERY totest and run the program manually

Acknowledgements

Explo uses the following 3rd-party libraries:

  • ffmpeg-go: A Go wrapper for FFmpeg.

  • goutubedl: A Go wrapper for yt-dlp.

  • godotenv: A library for loading configuration from .env files.

Contributing

Contributions are always welcome! If you have any suggestions, bug reports, or feature requests, please open an issue or submit a pull request.


[8]ページ先頭

©2009-2025 Movatter.jp