soulsync/core
Broque Thomas cee5590718 feat(ui): add MusicBrainz enrichment status UI with real-time monitoring
MusicBrainz library enrichment with real-time
status monitoring and manual control.
Features:
- Status icon button in dashboard header with glassmorphic design
- Animated loading spinner during active enrichment
- Hover tooltip showing:
  - Worker status (Running/Paused/Idle)
  - Currently processing item
  - Artist matching progress with percentage
- Click-to-toggle pause/resume functionality
- Auto-polling every 2 seconds for live updates
Backend Changes:
- Added GET /api/musicbrainz/status endpoint
- Added POST /api/musicbrainz/pause endpoint
- Added POST /api/musicbrainz/resume endpoint
- Worker tracks current_item for UI display
- get_stats() returns enhanced status data
Frontend Changes:
- New MusicBrainz button component with tooltip
- Premium CSS styling with animations
- JavaScript polling and state management
- Positioned tooltip below button with centered arrow
Files Modified:
- web_server.py: API endpoints and worker initialization
- core/musicbrainz_worker.py: current_item tracking
- webui/index.html: Button and tooltip structure
- webui/static/style.css: Complete styling (240 lines)
- webui/static/script.js: Polling and interaction logic (115 lines)
2026-02-03 15:20:04 -08:00
..
database_update_worker.py fixed issue where legacy cold was called. 2026-01-26 13:37:42 -08:00
download_orchestrator.py Reload Soulseek client config on orchestrator init 2026-01-11 21:02:23 -08:00
itunes_client.py Fix iTunes wishlist and remove Single suffix 2026-01-26 17:00:51 -08:00
jellyfin_client.py Add Jellyfin music library selection support 2025-12-08 10:20:15 -08:00
listenbrainz_client.py listenbrainz update 2025-11-18 09:57:47 -08:00
listenbrainz_manager.py Fix ListenBrainz playlists not showing when tables don't exist yet 2026-01-29 10:16:19 -08:00
lyrics_client.py auto lyric download 2025-09-22 16:04:06 -07:00
matching_engine.py add fourth search query for enhanced matching with both a cleaned and artist removed search. 2026-01-31 20:53:56 -08:00
media_scan_manager.py navidrome functionality start 2025-09-21 21:02:12 -07:00
metadata_service.py Discover page itunes integration. Spotify and Itunes will have their own pool 2026-01-23 23:05:58 -08:00
musicbrainz_client.py feat(ui): add MusicBrainz enrichment status UI with real-time monitoring 2026-02-03 15:20:04 -08:00
musicbrainz_service.py feat(ui): add MusicBrainz enrichment status UI with real-time monitoring 2026-02-03 15:20:04 -08:00
musicbrainz_worker.py feat(ui): add MusicBrainz enrichment status UI with real-time monitoring 2026-02-03 15:20:04 -08:00
navidrome_client.py Fix Quality Scanner for Navidrome & expand ListenBrainz playlist limit 2026-01-29 09:24:55 -08:00
personalized_playlists.py Discover page itunes integration. Spotify and Itunes will have their own pool 2026-01-23 23:05:58 -08:00
plex_client.py Add content type filters for watchlist artists 2026-01-11 01:33:39 -08:00
plex_scan_manager.py fix logging issue 2025-08-09 13:17:11 -07:00
seasonal_discovery.py further progress on wishlist rebuild 2025-11-23 19:14:13 -08:00
soulseek_client.py When downloading albums/EPs from Soulseek, after the first track downloads successfully, browse the source's folder and reuse it for subsequent tracks. This keeps entire albums coming from one source instead of scattering across many users. 2026-02-01 00:42:39 -08:00
spotify_client.py Update spotify_client.py 2026-01-25 13:51:29 -08:00
tidal_client.py fix tidal auth issue on restart 2026-01-29 11:33:29 -08:00
watchlist_scanner.py force refetch similar artists when Spotify IDs missing 2026-01-24 23:46:01 -08:00
web_scan_manager.py auto scan after download completion and follow with auto incremental update for active server 2025-09-22 15:01:28 -07:00
wishlist_service.py Fixed an issue where the wishlist wouldn't open if null value is detected 2026-01-27 17:04:31 -08:00
youtube_client.py Add clearing of completed YouTube downloads 2026-01-05 22:00:38 -08:00