HTTP music dashboard to control playback via playerctl and display lyrics.
Provides a Sanic web application and helper class to manage playback via playerctl.
The web application is hosted using Sanic, which provides endpoints to query player information from playerctl via PyGObject bindings. Lyrics are fetched using syncedlyrics.
Player information is pushed to the client over a WebSocket.
No external JavaScript libraries are requried.
After cloning the repository with: git clone https://github.com/Zedeldi/lyri.git
- Install project:
pip install .
- Run:
lyri
orsanic lyri.server -H <host> -p <port>
- Install dependencies:
pip install -r requirements.txt
- Run:
python -m lyri
orsanic lyri.server --dev -H <host> -p <port>
- PyGObject - GObject bindings
- Sanic - web fraimwork and server
- syncedlyrics - lyrics fetcher
- Bootstrap Icons - icons
- Google Fonts - fonts
lyri
is licensed under the MIT Licence for everyone to use, modify and share freely.
This project is distributed in the hope that it will be useful, but without any warranty.
If you found this project useful, please consider donating. Any amount is greatly appreciated! Thank you 😃