Commit graph

156 commits

Author SHA1 Message Date
Broque Thomas
a167a00a0a Add enhanced search with categorized dropdown UI
Implements an enhanced search endpoint in the backend that unifies Spotify and local database results, returning categorized artists, albums, and tracks. Updates the frontend with a new dropdown overlay for live search, debounced input, categorized result rendering, and direct integration with the main results area for album/track selection. Adds new CSS for the dropdown and result cards, and updates the Track dataclass to include image URLs for richer UI display.
2025-12-29 09:56:32 -08:00
Broque Thomas
5d29131530 Add configurable Soulseek search timeout and buffer
Introduces 'search_timeout' and 'search_timeout_buffer' options to Soulseek settings in the config, backend, and web UI. The backend now uses these values to control search duration and polling, allowing users to fine-tune how long searches run and how long to wait for late results.
2025-12-28 21:02:01 -08:00
Broque Thomas
a2bdb93498 Improve matching logic and wishlist album display
Enhanced the music matching engine to use stricter version handling, rebalance title/artist/duration weights, and raise confidence thresholds to reduce false positives. Updated string normalization to better handle separators and special characters. In the web UI, improved album ID sanitization and added a placeholder for missing album images in the wishlist view.
2025-12-28 19:23:50 -08:00
Broque Thomas
3c7659feac Improve wishlist track sorting robustness
Refactored the sorting logic to handle cases where 'spotify_data' may be a JSON string or have varying structures. This ensures consistent sorting by artist and track name, even with malformed or unexpected data formats.
2025-12-14 12:21:36 -08:00
Broque Thomas
b42d0252a1 Add Jellyfin music library selection support
Introduces backend and frontend functionality to list and select Jellyfin music libraries. Adds API endpoints, updates the client logic, and provides a UI selector for users to choose their preferred Jellyfin music library.
2025-12-08 10:20:15 -08:00
Broque Thomas
44b1050dca wishlist auto restart timer check 2025-12-01 10:26:46 -08:00
Broque Thomas
ab58b64a17 cap listenbrainz playlist memory 2025-11-25 09:44:41 -08:00
Broque Thomas
27f115d719 connect watchlist settings to scan 2025-11-24 21:43:11 -08:00
Broque Thomas
4684408439 Revert "user selected watchlist settings now connected to backend."
This reverts commit 2c12759dbb.
2025-11-24 19:30:30 -08:00
Broque Thomas
353580bd2d Revert "Update watchlist_scanner.py"
This reverts commit 4c8fa45337.
2025-11-24 19:29:53 -08:00
Broque Thomas
4c8fa45337 Update watchlist_scanner.py 2025-11-24 19:14:32 -08:00
Broque Thomas
2c12759dbb user selected watchlist settings now connected to backend. 2025-11-24 17:27:50 -08:00
Broque Thomas
c46e2c527e search bar for watchlist 2025-11-23 20:23:30 -08:00
Broque Thomas
4804a995f7 further progress on wishlist rebuild 2025-11-23 19:14:13 -08:00
Broque Thomas
0b2322f225 Wishlist overhaul near complete 2025-11-23 18:22:09 -08:00
Broque Thomas
b7b76b378d Fix: Emby sync issue 2025-11-23 11:34:38 -08:00
Broque Thomas
ec6a9163a8 Fix: Jellyfin multiple users could break functionality. 2025-11-22 14:41:44 -08:00
Broque Thomas
8712209bb9 emby support? 2025-11-21 16:19:58 -08:00
Broque Thomas
aef53f7b4d grab paginated albums 2025-11-18 22:46:24 -08:00
Broque Thomas
52c27ce2a9 cache listenbrainz and update with watchlist 2025-11-18 13:41:45 -08:00
Broque Thomas
333d984527 listenbrainz update 2025-11-18 09:57:47 -08:00
Broque Thomas
bc54f2c1a3 listenbrainz playlist support 2025-11-17 22:38:38 -08:00
Broque Thomas
a3f98f29d3 utilize quality profile over preferred. 2025-11-17 14:11:14 -08:00
Broque Thomas
08eb014da8 fix genre discovery 2025-11-17 12:22:49 -08:00
Broque Thomas
cc62b3b48e discover page progress 2025-11-17 10:09:08 -08:00
Broque Thomas
ee266920a9 discover progress 2025-11-17 08:49:49 -08:00
Broque Thomas
5a13b5fe94 discover progress 2025-11-17 08:30:38 -08:00
Broque Thomas
08a4decda8 discover progress 2025-11-16 20:56:08 -08:00
Broque Thomas
86fe7dde1f discover progress 2025-11-16 20:26:19 -08:00
Broque Thomas
f75ffdf6cb discover progress 2025-11-16 16:27:44 -08:00
Broque Thomas
68a15071f1 discover page 2025-11-16 15:33:08 -08:00
Broque Thomas
bd4e0d131e discover page updates 2025-11-16 15:11:42 -08:00
Broque Thomas
b16318f37e add spotify liked songs playlist 2025-11-16 10:34:44 -08:00
Broque Thomas
b0cfdf5271 progress 2025-11-11 17:05:44 -08:00
Broque Thomas
bb69b75f61 progress 2025-11-11 16:47:22 -08:00
Broque Thomas
65cbf6ce28 discover progress 2025-11-11 16:00:37 -08:00
Broque Thomas
76dca2f045 caching for similar artists 2025-11-11 14:04:55 -08:00
Broque Thomas
d399a612ef progress on discover page 2025-11-11 11:38:27 -08:00
Broque Thomas
47f8862fc4 discovery page progress 2025-11-11 10:39:46 -08:00
Broque Thomas
77c05b0315 grab all tracks from tidal playlists correctly 2025-11-09 20:42:29 -08:00
Broque Thomas
576f151c5c preferred quality updates. 2025-11-09 14:16:38 -08:00
Broque Thomas
9e3c64115b fix dict error on gui verison for manual searches 2025-11-09 09:39:00 -08:00
Broque Thomas
033ddb756a better rate limiting for spotiify 2025-11-09 08:55:07 -08:00
Broque Thomas
8c7cb6d448 manual library selection for plex servers 2025-10-15 15:04:05 -07:00
Broque Thomas
09b4638279 Enforce strict version matching for track confidence
Adds strict checks to ensure Soulseek track versions (live, remix, acoustic, instrumental) are only matched if the Spotify track title contains corresponding version indicators. This prevents mismatched versions from being accepted and applies a reduced penalty for matching non-original versions.
2025-10-04 21:48:52 -07:00
Broque Thomas
22db9ba04d Update jellyfin_client.py 2025-09-25 14:17:57 -07:00
Broque Thomas
3e8b469adb library page updates 2025-09-23 23:47:58 -07:00
Broque Thomas
329e665db9 library page update 2025-09-23 20:45:58 -07:00
Broque Thomas
8de9df07e7 auto lyric download 2025-09-22 16:04:06 -07:00
Broque Thomas
a73d89bc9e Update plex_client.py 2025-09-22 15:15:34 -07:00