Commit graph

101 commits

Author SHA1 Message Date
Broque Thomas
24b789660a Improve Docker path handling and filename extraction
Added helper functions to resolve Windows paths for Docker containers and to extract filenames in a cross-platform manner. Updated usage throughout web_server.py and soulseek_client.py to ensure correct path mapping and filename handling. Modified docker-compose.yml to use named volumes and mount the E: drive for better Docker compatibility.
2025-09-11 17:46:49 -07:00
Broque Thomas
008653a69c Improve Docker compatibility for host service URLs
Updated Soulseek client, web server, and docker-compose.yml to better handle service URLs when running inside Docker containers. Localhost URLs are now resolved to host.docker.internal, and Docker-specific volume mounts and extra_hosts are configured for improved interoperability between container and host services.
2025-09-11 13:53:36 -07:00
Broque Thomas
c4b4adf7fb Add web-based Spotify and Tidal OAuth flows
Introduces web server routes and UI buttons for initiating Spotify and Tidal OAuth authentication flows, with dedicated callback servers for token exchange. Updates Docker ports for OAuth callbacks and refines PKCE handling for Tidal. Improves user experience by allowing authentication directly from the web UI.
2025-09-11 13:24:15 -07:00
Broque Thomas
287d2fd2ec Add Docker support and improve headless compatibility
Introduces Docker deployment files (.dockerignore, Dockerfile, docker-compose.yml, docker-setup.sh, requirements-webui.txt, and README-Docker.md) for SoulSync WebUI. Refactors core/database_update_worker.py and core/media_scan_manager.py to support headless operation without PyQt6, enabling signal/callback compatibility for both GUI and non-GUI environments. Removes logs/app.log file.
2025-09-11 08:26:25 -07:00
Broque Thomas
94d1c82674 Add activity feed and toasts to dashboard
Introduces a global activity feed system with API endpoints for recent activities and toasts, and integrates activity tracking for key backend events (downloads, syncs, database updates, etc.). Updates the dashboard frontend to periodically fetch and display activity feed items and show toasts for recent actions. Improves error logging and reduces noise for expected 404s in Soulseek client. Adds related CSS for activity feed separators.
2025-09-10 17:04:12 -07:00
Broque Thomas
42002d1b45 Add automatic and manual wishlist cleanup features
Introduces backend logic to automatically remove tracks from the wishlist if they already exist in the database after downloads or database updates. Adds a new API endpoint and frontend button for manual wishlist cleanup, allowing users to remove already-owned tracks from the wishlist. Enhances reliability and user experience by keeping the wishlist up-to-date.
2025-09-10 07:37:46 -07:00
Broque Thomas
d13bd255d0 update 2025-09-03 18:45:05 -07:00
Broque Thomas
ebc7e2246d Added tidal support. Fixed readme auth issues. 2025-08-21 15:32:46 -07:00
Broque Thomas
87a1427b1e bug fix 2025-08-18 21:19:52 -07:00
Broque Thomas
ceeb4c22dc remove metadata updater tool for jellyfin since most of the support is lost. 2025-08-18 18:00:58 -07:00
Broque Thomas
0c90f4f327 multi-server source 2025-08-18 15:32:58 -07:00
Broque Thomas
620c78766b better 2025-08-18 10:36:57 -07:00
Broque Thomas
8063197a54 fix settings page, add rate limiting, live tracking to watchlist modal 2025-08-16 23:28:29 -07:00
Broque Thomas
1bf7995864 rate limiting 2025-08-16 10:24:07 -07:00
Broque Thomas
3bd6a29bfd Included Watchlist functionality.
Watchlist will allow the user to select artist to 'watch' and the app will automatically add new releases by those artists to the wishlist for automatic download.

included version information and modal
2025-08-16 09:27:01 -07:00
Broque Thomas
ce4dbef637 fetch all playlists with pagination 2025-08-14 20:28:16 -07:00
Broque Thomas
68584e0923 remove pycache 2025-08-14 14:09:11 -07:00
Broque Thomas
339cbe3c53 update pt. vol. feat. matching 2025-08-11 11:58:22 -07:00
Broque Thomas
7df724c202 rate limiting 2025-08-11 08:36:51 -07:00
Broque Thomas
6ff8ee2483 rate limiting to avoid sousleek ban 2025-08-11 00:18:14 -07:00
Broque Thomas
845f8e995f playlist backup functionality 2025-08-10 12:42:31 -07:00
Broque Thomas
0758512d8c metadata updater after transfer 2025-08-09 22:35:11 -07:00
Broque Thomas
f4ac2b7d6e KoЯn.... 2025-08-09 16:38:56 -07:00
Broque Thomas
3bbb635848 matching improvements and bug fixes 2025-08-09 13:47:00 -07:00
Broque Thomas
d9e41bc12f fix logging issue 2025-08-09 13:17:11 -07:00
Broque Thomas
de257af08d fixed korn match 2025-08-09 12:56:23 -07:00
Broque Thomas
5151c53fac incremental working better? 2025-08-09 11:14:42 -07:00
Broque Thomas
aee5995c1a auto incremental update 2025-08-09 01:37:25 -07:00
Broque Thomas
b5aea8c038 fixed issue where items didn't move to wishlist 2025-08-09 00:29:31 -07:00
Broque Thomas
2196ed35f6 fixing database issues 2025-08-08 22:27:02 -07:00
Broque Thomas
a228affd7b database fixes 2025-08-08 20:44:48 -07:00
Broque Thomas
e267986d44 better matching engine 2025-08-08 13:57:33 -07:00
Broque Thomas
285809d16f better matching 2025-08-08 13:19:49 -07:00
Broque Thomas
9f9183469d wishlist modal somewhat ready 2025-08-08 13:00:12 -07:00
Broque Thomas
b5e3c47051 wishlist functionality 2025-08-07 23:08:05 -07:00
Broque Thomas
ed91099a1c enable quality pref. 2025-08-07 21:43:03 -07:00
Broque Thomas
2ad0dddba4 recommend database refresh every 1-2weeks
This is needed if users manually correct failed matches on plex when songs are scanned in. If a db sync is done after the scan but before the manual modification,
2025-08-07 20:27:26 -07:00
Broque Thomas
73679f5709 bug fixes 2025-08-07 14:53:16 -07:00
Broque Thomas
906d0c23b7 incremental update bug fixed 2025-08-07 11:37:13 -07:00
Broque Thomas
66bbfaf9c1 fix incremental update 2025-08-07 11:26:50 -07:00
Broque Thomas
aafc0ca49f consistent matching between sync and artists. 2025-08-07 10:35:56 -07:00
Broque Thomas
35fdef76ce better matching on slskd 2025-08-07 00:37:44 -07:00
Broque Thomas
86fcdd6869 better matching 2025-08-06 19:44:55 -07:00
Broque Thomas
684433d857 update variations 2025-08-06 00:07:12 -07:00
Broque Thomas
b76c0531e5 basic db structure 2025-08-05 22:43:04 -07:00
Broque Thomas
a98b10715e remove bad code 2025-07-29 18:36:48 -07:00
Broque Thomas
886b9140a1 fixed 2025-07-29 17:25:04 -07:00
Broque Thomas
7ef7521c1b remove 2025-07-29 15:56:11 -07:00
Broque Thomas
bae3bedd71 remove logs 2025-07-29 15:32:18 -07:00
Broque Thomas
6bc87cc0f5 improved metadata speed 2025-07-29 14:10:06 -07:00