cl.st
271e2b5e61
feat(api): get per-album discography ( #686 )
...
* feat(api): get per-album discography
* update changelog
2026-03-08 11:47:03 +01:00
cl.st
3c108ac6d6
feat(api): add item name in custom scripts ( #693 )
2026-03-08 11:11:42 +01:00
cl.st
4e2e643a6c
feat(front): add search button public url ( #689 )
2026-03-07 23:10:17 +01:00
cl.st
69c31de0c1
feat(api): update retry condition ( #685 )
...
* feat(api): update retry condition
* feat(api): plex m3u upload for mix and fav tracks
2026-03-07 10:20:45 +01:00
cl.st
474169bc6b
update changelog ( #680 )
2026-03-04 18:25:15 +01:00
cl.st
49b869a28f
fix(devops): missing try catch ( #677 )
2026-03-03 07:36:10 +01:00
cl.st
75354924e0
feat(front): add order select on favorite track list ( #676 )
...
* feat(front): add order select on favorite track list
* fix(api): hardcoded country code
* fix e2e
2026-03-01 21:17:56 +01:00
cl.st
ade265f2d0
feat(api): enhance error handling ( #669 )
2026-03-01 09:31:51 +01:00
cl.st
b8c61563c2
fix(lidarr): typo path templating ( #666 )
2026-02-23 17:51:13 +01:00
cl.st
bfb4b9bcb8
feat(lidarr): fixed path templating for lidarr ( #665 )
2026-02-23 17:21:52 +01:00
cl.st
da95bdfa20
feat(api): make temporary playlist private ( #662 )
2026-02-22 09:49:36 +01:00
cl.st
6e0acb95ae
feat(API): fav tracks to playlist ( #659 )
...
* feat(API): fav tracks to playlist
* fix lint
* fix cve
2026-02-21 16:51:09 +01:00
cl.st
e58e76cdfd
feat(api): add pagination for playlist album feature ( #655 )
2026-02-18 10:15:31 +01:00
cl.st
9c1ef05693
fix(api): fav m3u incremental ( #649 )
2026-02-16 01:03:12 +01:00
cl.st
73a44a0b52
feat(api): add m3u for favorite tracks ( #648 )
2026-02-15 09:00:41 +01:00
cl.st
1e80a65256
feat(api): add max 2 retries on download error ( #644 )
2026-02-12 18:32:14 +01:00
cl.st
e54690c734
fix(api): tiddl error detection ( #642 )
2026-02-11 16:55:34 +01:00
cl.st
36a81a2f5c
fix eslint 10
2026-02-09 22:17:16 +00:00
cl.st
a69aa94985
feat(lidarr): auto renew token on 401 ( #639 )
...
feat(lidarr): update release format display
feat(API): move search queries to tidal api v2
feat(lidarr): return max 30 results instead of 20
feat(doc): update readme
feat(lidarr): keep 20 first results
2026-02-08 19:50:27 +01:00
cl.st
fd513a156b
feat(lidarr): add keywords in release names ( #634 )
...
* feat(lidarr): add keywords in release names
* add dependabot for pip package
2026-02-02 12:30:08 +01:00
cl.st
9659415cd9
Feat/simplify token renew ( #630 )
...
* feat(api): simplify tidal token refresh
* knip
* split proxies
2026-01-29 23:57:18 +01:00
cl.st
2721214396
feat(front): add download progress in processing queue ( #628 )
2026-01-29 01:07:43 +01:00
cl.st
bc9a4b68ca
fix(api): strip process from sse ( #627 )
2026-01-28 23:31:54 +01:00
ee0e36c515
feat(api): add Plex playlist upload ( #621 )
...
* initial implementation for plex playlist upload
* feat(api): implement Plex monitor for playlist upload and scanning
- Added a new service for monitoring Plex notifications and handling playlist uploads.
- Integrated Plex monitor into the API, allowing for real-time updates on library scans.
- Updated environment variables in `compose.yml` for Plex configuration.
- Enhanced graceful shutdown to stop the Plex monitor.
- Updated package dependencies to include WebSocket support for Plex communication.
* refactor(api): change Plex monitor to start on demand
- Removed the Plex monitor initialization from the server startup process.
- Added checks to prevent multiple instances of the Plex monitor from running.
- Enhanced the start and stop methods to manage the monitor's state based on pending playlists.
- Ensured the monitor stops when there are no more pending playlists to process.
---------
Co-authored-by: David Sima <ens08083@adobe.com >
Co-authored-by: cl.st <clement@cl-st.dev >
2026-01-27 19:19:15 +01:00
cl.st
29150a926b
feat(api): add custom post scripts ( #617 )
2026-01-26 22:53:48 +01:00
cl.st
b8a4488f39
feat(api): add navidrome library update ( #615 )
2026-01-24 10:52:38 +01:00
cl.st
0368fb36ca
Feat/enhance token renew ( #611 )
...
* feat(API): refacto token renew process
* feat(API): force proxy for tidal requests
* Fix settings endpoint
2026-01-23 23:01:07 +01:00
cl.st
1413bea008
Feat/lidarr quality ( #613 )
...
* feat(front): add explicit tag on album grid
* feat(lidarr): return results for each quality as a separate album
2026-01-23 00:04:10 +01:00
cl.st
57e4f7efd6
feat(lidarr): apply replay gain if enabled ( #612 )
2026-01-22 21:41:57 +01:00
cl.st
d7de9a64a6
feat(api): update tiddl to 3.2.0 ( #606 )
...
* feat(api): update tiddl to 3.2.0
* fix custom css in dev mode
2026-01-19 18:36:41 +01:00
cl.st
3253140bc4
fix(front): download error ( #600 )
2026-01-17 11:20:37 +01:00
cl.st
42a60d3658
fix(api): load queue from file ( #599 )
2026-01-17 09:07:14 +01:00
cl.st
691b7a8ae1
fix(api): token renew interval ( #598 )
2026-01-16 22:31:20 +01:00
cl.st
dcd5fba8da
fix(api): queue file state ( #595 )
2026-01-16 00:16:02 +01:00
cl.st
fd4c486183
fix(doc): plex params ( #592 )
...
* fix(doc): plex params
* fix(lidarr): download status
2026-01-15 13:13:05 +01:00
cl.st
347d4ac205
feat(API): parallelize download queue and processing queue ( #591 )
...
* api
* feat(API): parallelize download queue and processing queue
2026-01-15 08:57:34 +01:00
cl.st
5f24fc7e9b
feat(lidarr): add dedicated download path for lidarr ( #587 )
...
* feat(lidarr): add dedicated download path for lidarr
* feat(lidarr): fix delete queue from lidarr
2026-01-14 12:43:51 +01:00
cl.st
851037a7ad
feat(api): use download_path as final destination ( #586 )
2026-01-13 19:31:38 +01:00
cl.st
cd3a3d466e
feat(api): override download path ( #582 )
...
* feat(api): override download path
* feat(api): download all albums of a playlist
* doc: update changelog
* feat(api): use spawn instead of spawnSync
* feat(api): replace OVERRIDE_DOWNLOAD_PATH with SKIP_POST_PROCESSING
* revert SKIP_POST_PROCESSING
2026-01-12 23:05:38 +01:00
cl.st
8a801de9a1
fix(api): rsgain spawn process ( #583 )
2026-01-09 23:57:41 +01:00
cl.st
b69a105040
feat(lidarr): Add queue manager to lidarr ( #577 )
...
* feat(lidarr): Add queue manager to lidarr
* feat(lidarr): add support for lidarr import
2026-01-06 20:14:30 +01:00
cl.st
54dceef756
feat(front): move processing panel to page ( #574 )
...
* feat(front): move processing panel to page
* clean stuff
2026-01-05 18:54:49 +01:00
cl.st
fbe16eb76a
feat(api/front): add api key + lidarr connector ( #567 )
...
* feat(api/front): add api key + management
wip
update
update doc
feat(api): add lidarr api key handler
update doc
* fix e2e
* refacto
* fix navidrome count
* fix album missing
* enhance match
* refacto
* return more data to lidarr
* add sabnzbd endpoint
* update doc
2026-01-04 15:02:57 +01:00
cl.st
47df15f2ee
feat(API): add replay gain ( #571 )
2025-12-28 21:05:08 +01:00
cl.st
bce7e4ae92
fix(api): m3u rerun issue ( #565 )
2025-12-19 23:41:31 +01:00
cl.st
99c463b6ba
Feat/OIDC ( #553 )
...
* feat(auth): add support for OIDC
* add e2e
* adapt for pocket id
2025-12-19 22:34:49 +01:00
cl.st
fd3df3e76f
fix(api): m3u default base path ( #563 )
2025-12-17 10:47:07 +01:00
cl.st
c402be1235
Fix/player ownership ( #551 )
...
* fix(api): playback CORS issue
* fix(docker): shared folder ownership
* refacto(front): remove dev / prod url condition
* fix(e2e): resume test flaky
2025-12-12 00:00:14 +01:00
cl.st
04aff7e00f
feat(api): migrate init.sh to typescript + move files ( #549 )
2025-12-09 20:38:53 +01:00
cl.st
4b53bac253
fix log ( #542 )
2025-12-08 00:06:53 +01:00