Scrobblet is a lightweight scrobbler for self-hosters. It tracks your listening activity from a music source and scrobbles it to your preferred targets, and is easy to extend with new integrations.
Currently, Scrobblet supports scrobbling from Spotify to Last.fm, ListenBrainz (including any ListenBrainz-compatible service), Maloja, Koito, and CSV.
⚠️ Warning: This project is in early stages of development. Features and APIs may change without notice.
- Lightweight: Scrobblet is and will always be lightweight, perfect for self-hosting environments
- Device-independent: Communicates with streaming service APIs, so it doesn't matter which device you play your music on
- Multiple targets: Scrobble to multiple services simultaneously
- Now playing support: Broadcasts what you're currently listening to
- Adaptive polling: The polling interval automatically adjusts based on your listening activity to reduce unnecessary load
Here's a minimal Docker Compose file to get started with scrobbling from Spotify to CSV:
services:
scrobblet:
container_name: scrobblet
image: degeens/scrobblet:latest
volumes:
- scrobblet-data:/etc/scrobblet
ports:
- 7276:7276
environment:
- SCROBBLET_SOURCE=Spotify
- SCROBBLET_TARGETS=CSV
- SPOTIFY_CLIENT_ID=your_spotify_client_id
- SPOTIFY_CLIENT_SECRET=your_spotify_client_secret
- SPOTIFY_REDIRECT_URL=http://127.0.0.1:7276/spotify/callback
restart: unless-stopped
volumes:
scrobblet-data:Set SPOTIFY_CLIENT_ID, SPOTIFY_CLIENT_SECRET, and SPOTIFY_REDIRECT_URL to your actual Spotify application credentials. See the Spotify Configuration Guide for instructions on obtaining these.
For detailed installation instructions, see the Installation Guide.
For detailed configuration instructions, see the Configuration Guide.
Contributions are welcome, especially those aligned with Scrobblet's goal of staying lightweight.
Feel free to open an issue or create a pull request to propose improvements or new integrations.
This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.
