A plugin for the music geek's media organizer.
Beets Store is a web frontend for your music library organized by beets.
- Play the music in your browser.
- Optional scrobble the played music info to LastFM
- Download the music files and entire albums (A zipped directory with the music files and the album cover image.)
Install required services.
$ apt install redis
Install package and scripts.
$ git clone https://github.com/tschaefer/beets-store
$ cd beets-store
$ pipx install --include-deps .
Add plugin settings to beets configuration file.
store:
host: "::1"
port: 8080
zipdir: /tmp/beets/store/zip
lastfm:
api_key: API_KEY
secret_key: SECRET_KEY
The lastfm
settings are optional. If you don't want to scrobble leave the
settings out.
Example beets configuration file
Import audio files.
$ beet import /music
Fetch cover art.
The album art image must be stored as cover.jpg
alongside the music files
for an album. For optimal display all the images should have an equal width and
height of at least 300x300 px.
$ beet fetchart
Start job queue worker.
The job queue is used to create album zip files for the download.
$ rq worker
Start the web service.
$ beet store
Configure environment file.
Set BEETS_MUSIC_VOLUME
in the environment file docker-compose.env
.
For overriding the configuration file and persist the database enable and set the proper settings in the enviroment and compose files.
Start the service.
$ docker compose --env-file docker-compose.env up