Commit Graph

408 Commits

Author SHA1 Message Date
Derek Simonds fd9380a149 feat: adds option to view top rated songs in the Favorite Songs section (#2289)
* Adds Top Rating option songs to Artist's favorite songs section
2026-08-03 19:36:08 -07:00
Yunus 71fc632501 feat: add an option to configure default share expiration (#2283)
* feat: add an option to configure default share expiration
2026-08-03 19:26:45 -07:00
jeffvli 13528eff09 add library rescan to server selector menu 2026-07-29 22:55:52 -07:00
jeffvli cbf8037099 improve app logging
- consolidate electron-log and expand support-oriented logging
- consolidate log levels to info / trace only
- add system/server diagnostics exporter
2026-07-20 22:26:07 -07:00
jeffvli 173efa9bfd add scan listener and query invalidation on tag editor save 2026-07-19 21:03:13 -07:00
jeffvli f8b611fd4c fix lint 2026-07-19 00:05:04 -07:00
jeffvli 61eb998de1 fix session invalidation on invalid credentials (#2230) 2026-07-18 23:51:52 -07:00
jeffvli a51299e818 add logout button 2026-07-18 21:31:47 -07:00
Chris Scott 75bdf60912 feat(tag-editor): add batch metadata editor with artwork support (Duplicate) (#2252)
* feat(tag-editor): add batch metadata editor with artwork support

---------

Co-authored-by: jeffvli <jeffvictorli@gmail.com>
2026-07-17 19:17:11 -07:00
jeffvli b22541d1d8 fix subsonic reportPlayback request chain so that starting resolves before playing (#2131) 2026-07-16 16:01:43 -07:00
Tristen Allen 8517a9f934 Unify scrobbling behavior across subsonic servers. (#2229)
Small change that modifies the `scrobble` controller method to always limit sending a
`scrobble` payload to the subsonic backend to cases where a scrobble is being submitted
or a new song is being started.

This is the current behavior for subsonic backends which support the `reportPlayback` backend
(e.g., Navidrome). This change only modifies the behavior for other backends, which would receive
`scrobble` notifications whenever a song changed for both the stopped song and the newly-started song.

After this change, all subsonic backends now only receive a `scrobble` when a new song is started or
when feishin is attempting to submit a scrobble.
2026-07-14 11:46:08 -07:00
Kendall Garner c5d074be16 fix(subsonic): ensure reportPlayback is an integer 2026-07-11 18:09:53 -07:00
jeffvli 308a94d3b6 ensure savePlayQueueByIndex uses a valid currentIndex 2026-07-11 12:02:05 -07:00
jeffvli 908e83a2f8 fix missing spaces between ttml word cues (#2214) 2026-07-10 12:48:34 -07:00
Jeff 355b19c1cb Add support for OpenSubsonic enhanced lyrics (#2208) 2026-07-09 21:32:05 -07:00
mannansainidev 0c89fea1ea feat: add jukebox player engine for server-side playback (#2109)
* feat: add jukebox player engine for server-side playback

---------

Co-authored-by: jeffvli <jeffvictorli@gmail.com>
2026-07-09 21:29:22 -07:00
BlackHoleFox 94aa34f6b2 Improve Jellyfin playlist loading and modification performance times (#2184)
* Remove unneeded Fields from getPlaylistSongList

* Add optimized controller function for playlist addition duplication checks

* Remove Jellyfin People data handling

* move artist map inline

---------

Co-authored-by: Kendall Garner <17521368+kgarner7@users.noreply.github.com>
2026-06-29 05:21:04 +00:00
Kendall Garner da445b815d feat(genre): support sorting by track/album count 2026-06-28 19:39:32 -07:00
jeffvli ff426bda6d add unknown MediaType to Jellyfin playlist fetch (#2063) 2026-06-19 22:08:10 -07:00
jeffvli 61cc87e0b7 refactor song path replacement
- path replacement during runtime instead of during API normalization
- fix Navidrome API path not appending libraryPath which caused inconsistency between ND and Subsonic paths
2026-06-19 22:02:25 -07:00
jeffvli 46b94a83f1 fix reportPlayback event chain (#2131)
- properly send stopped event on song change
- properly send both starting and playing evento n song change instead of only starting
2026-06-06 18:41:59 -07:00
jeffvli 40a1d1438d re-add missing scrobble on playback start when using playback report (#2131) 2026-06-06 18:07:53 -07:00
jeffvli c4da44a443 add playlist/artist image upload for jellyfin (#2105) 2026-06-03 00:07:31 -07:00
Kendall Garner 6aab8d4121 fix(scrobble): use proper pause/unpause for seek, use ms for subsonic 2026-05-31 21:13:11 -07:00
Kendall Garner 2ff9e4b0a2 fix(subsonic): fix favoriting/unfavoriting on playlist songs 2026-05-29 09:19:39 -07:00
jeffvli d9da588c7c add workaround for identical Jellyfin release name bug (#2041) 2026-05-26 22:06:40 -07:00
jeffvli 650ae0b320 add reportPlayback as default Jellyfin feature 2026-05-25 13:26:11 -07:00
jeffvli 66cfab3b57 add playbackReport handler to Subsonic controller 2026-05-25 13:26:10 -07:00
jeffvli 112449576e add OS reportPlayback endpoint and types 2026-05-25 13:26:09 -07:00
Kendall Garner aec5e84758 fix(navidrome): always filter by id instead of value 2026-05-18 17:17:20 -07:00
Jeff e2a1d813a9 Use proper casing for i18n locales (#1998) 2026-05-11 19:42:07 -07:00
Felix Prillwitz 5d4547080d Always use remote url for discord rpc image (#2009)
* add option to force remote url for api calls

* force remote url for discord rpc image
2026-05-07 21:13:34 -07:00
Maximilian Leith e3a0879301 fix: only show Jellyfin audio playlist (#2000) 2026-05-07 20:48:43 -07:00
jeffvli f190626c8c fix playcounts on jellyfin album detail songs (#2005) 2026-05-07 20:42:51 -07:00
jeffvli ac0c074d4b fix undefined / null parameter string for Subsonic (#1978) 2026-04-28 21:17:44 -07:00
Kendall Garner ea9119431c use urlsearchparams instead of qs (#1970) 2026-04-21 00:09:23 -07:00
jeffvli cc4e933c07 fix missing path replacement transformations 2026-04-16 00:29:13 -07:00
jeffvli ca3c7015c6 add fallback to direct streamURL if getTranscodeDecision fails 2026-04-07 18:14:47 -07:00
jeffvli 918f453066 support navidrome artist image upload/delete 2026-04-06 11:41:26 -07:00
jeffvli a8d990db23 fix subsonic transcoding stream url to return raw string instead of fetch 2026-04-04 23:03:46 -07:00
jeffvli a8954bfa2a remove imageUrl in favor or imageId for artistInfo 2026-04-04 21:52:44 -07:00
jeffvli 1592204515 add fallback sort order for subsonic playlist list 2026-04-04 12:03:41 -07:00
jeffvli db06e7f601 add native nd radio endpoints, support radio station images 2026-04-02 18:26:26 -07:00
jeffvli 7442f9d3ca support navidrome playlist image upload 2026-04-02 01:23:09 -07:00
jeffvli a30b1ec90b add OS transcoding extension 2026-03-31 20:45:22 -07:00
Kendall Garner 68e6e3cf65 feat(playlist): support updating playlist track order (#1875)
* feat(playlist): support updating playlist track order

* force track mode when editing

* use common confirmation for save

* remove en editPLaylist key
2026-03-27 21:36:08 -07:00
kast3t 6dc58a3ff8 fix playlist sort by id (#1867) (#1868)
* fix playlist sort by id (#1867)
2026-03-23 18:27:21 -07:00
jeffvli 615f9c3515 refactor search into individual sections by itemtype, add infinite loader 2026-03-18 00:59:04 -07:00
Lyall dfdac28f53 Fix server queue saving/restoring on Navidrome and OpenSubsonic (#1828)
* fix server queue saving

* fix error when attempting to restore empty queue

* queue items optional

* make playQueueByIndex optional

* fix incorrect error message
2026-03-12 13:41:50 +00:00
jeffvli 5b4da3bc29 use batched fetching for nd song list
- albumIds get culled from query parameters after a certain number, resulting in not all items fetched
2026-03-11 20:46:49 -07:00