Serve multiple beets APIs on the same host/port
Project description
beets-webrouter
A beets plugin to serve multiple web apps on the same server/host/port with one command.
This allows serve the beets web UI, a Subsonic API as well as the generated M3U playlists with a single beets webrouter
command.
Installation
python3 -m pip install beets-webrouter
Configuration
Enable the plugin and add a webrouter
section to your beets config.yaml
as follows:
plugins:
- webrouter
- web
- webm3u
- beetstream
- aura
- smartplaylist
webrouter:
routes:
/:
plugin: web
/subsonic:
plugin: beetstream
config:
never_transcode: true
/aura:
plugin: aura
blueprint: aura_bp
/m3u:
plugin: webm3u
aura:
page_limit: 100
smartplaylist:
auto: false
output: m3u
playlist_dir: /data/playlists
relative_to: /data/playlists
playlists:
- name: all.m3u
query: ''
Usage
Once the webrouter
plugin is enabled within your beets configuration, you can run it as follows:
beet webrouter
Once the server started, you can browse http://localhost:8337
.
CLI
Usage: beet webrouter [options]
Development
Run the unit tests (containerized):
make test
Run the e2e tests (containerized):
make test-e2e
To test your plugin changes manually, you can run a shell within a beets docker container as follows:
make beets-sh
A temporary beets library is written to ./data
.
It can be removed by calling make clean-data
.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for beets_webrouter-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c8d38270237359bca7af1a5d7b125c57d16def5eeb21be27db052b80109c06c |
|
MD5 | f3e71bec9765d749b8d7d8b47d45558f |
|
BLAKE2b-256 | 3c28a7009c9d8f7040dc9f8f5ed6507b892cceb1143ec349b6cee81e665ab6a1 |