Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tschaefer/beets-store
:musical_note: Beets Store. A plugin for the music geek's media organizer.
https://github.com/tschaefer/beets-store
beets music python web-frontend
Last synced: about 5 hours ago
JSON representation
:musical_note: Beets Store. A plugin for the music geek's media organizer.
- Host: GitHub
- URL: https://github.com/tschaefer/beets-store
- Owner: tschaefer
- License: bsd-3-clause
- Created: 2015-01-23T11:59:57.000Z (almost 10 years ago)
- Default Branch: main
- Last Pushed: 2024-03-15T19:02:21.000Z (8 months ago)
- Last Synced: 2024-03-16T23:57:02.656Z (8 months ago)
- Topics: beets, music, python, web-frontend
- Language: Python
- Homepage:
- Size: 3.66 MB
- Stars: 5
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Beets Store
A plugin for the music geek's media organizer.
## Introduction
*Beets Store* is a web frontend for your music library organized by
[beets](http://beets.radbox.org/).* Play the music in your browser.
* Optional scrobble the played music info to [LastFM](https://www.last.fm)
* Download the music files and entire albums (A zipped directory with the music
files and the album cover image.)## Screenshots
### Albums overview
![Albums view](.screenshots/beets-view-albums.png "Albums view")
### Artists overview
![Artists view](.screenshots/beets-view-artists.png "Artists view")
### Tracks overview
![Tracks view](.screenshots/beets-view-tracks.png "Tracks view")
### Album detailview
![Album view](.screenshots/beets-view-album.png "Album view")
## Installation
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 .## Usage
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](https://gist.github.com/tschaefer/daa09959eb7272715800#gistcomment-1684418)
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
### Docker
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
## License
[BSD 3-Clause “New” or “Revised” License](https://choosealicense.com/licenses/bsd-3-clause/)
### Further thirdparty license
* [beetsplug/store/static/img/404.jpg](https://pngimg.com/image/101094)
## Is it any good?
[Yes](https://news.ycombinator.com/item?id=3067434)