-
Notifications
You must be signed in to change notification settings - Fork 28
7. Development
Explo started as a simple personal Go script in 2023: fetch recommendations from ListenBrainz, find the tracks on Youtube, and create playlists in Navidrome (Subsonic). It was initially meant to be run as a single binary on a server. Its core goal has stayed the same, but many features have been developed to fit user requests.
Explo now fits into different environments. It can be run as a single binary or deployed via Docker, depending on user preference.
Explo is designed to be an set-and-forget solution. Once configured, it should run with minimal user intervention, continuously requesting music and creating playlists. Additional features may contain optional interaction, but automation remains the default.
Compatibility has been a priority from the start and also supports the set-and-forget design. Changes should be backward compatible whenever possible, with deprecation notices communicated before removing a feature.
- Go >1.24.1
- ffmpeg and yt-dlp installed and available in
$PATH(or custom paths defined in.env)
To build Explo from source:
Clone the repository and switch to the desired branch:
git clone https://github.com/LumePart/Explo.git
cd Explo
git checkout <branch name>Copy the sample configuration and modify it (you can also refer to the Configuration Reference):
cp sample.env .env
nano .envIf testing functionality, set LISTENBRAINZ_DISCOVERY to api (downloads less songs)
Build Explo with this command:
go build -o explo ./src/main