Merged
Conversation
- Added JellyfinClient for user/playlist management and image proxying - Updated System router to expose Jellyfin users and their avatars - Refactored WeeklyJamsGenerator to use real user data and enhanced UI - Added full quality selector matching global settings - Added user avatars with fallback - Added support for fetching playlist covers from Tidal and syncing to Jellyfin - Cleaned up debug logging and refactored connection logic
… refresh/wait logic
Owner
|
That is an amazing PR, thanks a lot! Will need to test a bit and resolve the conflict after my recent changes then I'll add it in. |
RayZ3R0
added a commit
that referenced
this pull request
Jan 1, 2026
- Integrated Jellyfin server support with cover art sync - Added automated ListenBrainz sync per Jellyfin user - Dynamic cover art generator for playlists - Enhanced M3U8 with source metadata headers - Resolved conflict: Added MusicBrainz toggle to new Settings UI - Removed Group Compilations feature - Updated Settings UI to card-based layout with manual save - Separated release notes: 1.2.7 (MusicBrainz) and 1.3.0 (Jellyfin)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR enhances the existing media workflow by introducing advanced integration with Jellyfin API for metadata management and a fully automated system for User-Centric ListenBrainz playlists.
While basic playlist support (via .m3u8 files) was already present, this update focuses on the missing pieces: robust cover art synchronization and multi-user automation.
New Features
Cover Art Synchronization: Previously, playlists were just file lists. Now, Tidaloader actively communicates with the Jellyfin API to upload the correct Cover Art for each playlist (sourced from Tidal).
Library Indexing: Implemented a forced refresh_library trigger to ensure Jellyfin detects new playlists immediately, allowing the cover to be attached without delay.
User-Centric Automation: Instead of manually fetching tracks, the system now scans Jellyfin users (linked to ListenBrainz) and automatically creates/updates their personal playlists (e.g., "Weekly Jams", "Year in Music").
Recommendation Loop: By leveraging user listening history (via the Jellyfin ListenBrainz plugin), Tidaloader closes the loop: Jellyfin Plays -> ListenBrainz Stats -> Tidaloader Download -> Jellyfin Playlist.
Custom Generator: Since ListenBrainz playlists don't have native covers like Tidal, a new engine generates unique artwork on the fly.
Smart Visuals: Features a premium layout with the Playlist Title and User Name, using dynamic font scaling and text wrapping for a polished look in the Jellyfin interface.
M3U8 Metadata: Added # Source: [source_type] leaders to generated playlist files for better tracking.
UI Governance: The Frontend now filters lists to separate "Tidal Playlists" from "Automated/ListenBrainz Playlists", keeping the interface clean.