Skip to content

Commit 2bcef2b

Browse files
committed
rewrite of README
1 parent 9074f39 commit 2bcef2b

File tree

1 file changed

+19
-39
lines changed

1 file changed

+19
-39
lines changed

README.md

Lines changed: 19 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,61 +1,41 @@
11
# Explo - Discover Weekly for Self-Hosted Music Systems
22

3-
**Explo** is an alternative to Spotify's "Discover Weekly". It automates music discovery by downloading recommended tracks based on your listening history. Using [ListenBrainz](https://listenbrainz.org/) for recommendations and Youtube for downloading.
3+
**Explo** bridges the gap between music discovery and self-hosted music systems. It serves as a self-hosted alternative to Spotify’s *Discover Weekly*, automating music discovery based on your listening history.
44

5-
Explo offers two discovery modes:
5+
Explo uses the [ListenBrainz](https://listenbrainz.org/) recommendation engine to retrieve personalized tracks and downloads them directly into your music library.
66

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

109
## Features
1110

12-
- Supports **Emby**, **Jellyfin**, **MPD**, **Plex** and **Subsonic-API-based systems**.
13-
- Automatically fetches recommendations and downloads the tracks.
14-
- Adds metadata (title, artist, album) to the downloaded files.
15-
- Creates a "Discover Weekly" playlist with the latest songs.
16-
- Keeps past playlists by default for easy access.
11+
- Fetches weekly music recommendations based on your listening history
12+
- Downloads tracks using YouTube, Soulseek (or both!)
13+
- Adds metadata (title, artist, album) to each file (youtube downloads)
14+
- Creates a Discover Weekly playlist in your music system
15+
- Keeps previous playlists for later listening
1716

18-
## Getting Started
17+
---
1918

20-
### Prerequisites
19+
## Documentation
2120

22-
- A self-hosted music system like Emby, Jellyfin, MPD, Plex, or any Subsonic-API compatible system (e.g., Navidrome, Airsonic).
23-
- A [YouTube Data API](https://developers.google.com/youtube/v3/getting-started) key.
24-
- [ListenBrainz scrobbling](https://listenbrainz.org/add-data/) set up
21+
See the [Wiki Home](https://github.com/LumePart/Explo/wiki) for an overview of supported systems and next steps.
2522

26-
### Installation
23+
Or jump directly to:
2724

28-
#### Docker
29-
30-
1. Download [docker-compose.yaml](https://github.com/LumePart/Explo/blob/main/docker-compose.yaml) file to your system and configure volume mappings
31-
2. Make a ``.env`` file in the directory defined in docker-compose and configure it ([refer to sample.env](https://github.com/LumePart/Explo/blob/main/sample.env) for options)
32-
3. Launch the container with `docker compose up -d`
33-
34-
#### Binary
35-
36-
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.
37-
38-
1. Download the [latest release](https://github.com/LumePart/Explo/releases/latest) and ensure it's executable
39-
2. Make a ``.env`` file in the same directory as the binary and configure it ([refer to sample.env](https://github.com/LumePart/Explo/blob/main/sample.env) for options)
40-
3. Add a Cron job to run Explo weekly:
41-
```bash
42-
crontab -e
43-
```
44-
Insert this to the last line to execute Explo every tuesday at 00:15 (ListenBrainz updates its discovery database on Mondays)
45-
```bash
46-
15 0 * * 2 cd /path/to/explo && ./explo-linux-amd64
47-
```
48-
**PS!** To test if everything is correct change ``LISTENBRAINZ_DISCOVERY`` to ``test`` and run the program manually
25+
- [Getting Started](https://github.com/LumePart/Explo/wiki/2.-Getting-Started) – Installation and setup guide
26+
- [Configuration Parameters](https://github.com/LumePart/Explo/wiki/3.-Configuration-Parameters) – Environment variable reference
27+
- [System Notes](https://github.com/LumePart/Explo/wiki/4.-System-Notes) – Known issues and system-specific tips
28+
- [FAQ](https://github.com/LumePart/Explo/wiki/6.-FAQ) – Common questions
4929

5030
## Acknowledgements
5131

5232
Explo uses the following 3rd-party libraries:
5333

54-
- [ffmpeg-go](https://github.com/u2takey/ffmpeg-go): A Go wrapper for FFmpeg.
34+
- [ffmpeg-go](https://github.com/u2takey/ffmpeg-go): A Go wrapper for FFmpeg
5535

56-
- [goutubedl](https://github.com/wader/goutubedl): A Go wrapper for yt-dlp.
36+
- [goutubedl](https://github.com/wader/goutubedl): A Go wrapper for yt-dlp
5737

58-
- [godotenv](https://github.com/joho/godotenv): A library for loading configuration from .env files.
38+
- [godotenv](https://github.com/joho/godotenv): A library for loading configuration from .env files
5939

6040
## Contributing
6141

0 commit comments

Comments
 (0)