Sidebar with merged Playlists #40

Closed
opened 2026-10-07 19:44:14 +02:00 by SBDeveloper · 1 comment
Owner

Parent

Part of #32

What to build

A left sidebar with Library entries (Songs, Albums, Artists) and one merged list of Playlists. Rows show a Source badge. Chips filter by Source (All, Deezer, Local, Offline). A + button creates a Playlist, a right-click menu renames or deletes, and Tracks can be dragged from any Track list onto a row. Width and collapsed state persist across restarts. Replaces both old playlist pages.

Acceptance criteria

  • Source filter and sidebar list logic as plain functions with vitest tests
  • Layout persistence logic with vitest tests (read/write, corrupt value falls back to defaults)
  • Create, rename, delete and drag-to-add work, including on a Deezer-linked Playlist
  • Old playlist pages removed
  • Verified by running the app

Blocked by

## Parent Part of #32 ## What to build A left sidebar with Library entries (Songs, Albums, Artists) and one merged list of Playlists. Rows show a Source badge. Chips filter by Source (All, Deezer, Local, Offline). A `+` button creates a Playlist, a right-click menu renames or deletes, and Tracks can be dragged from any Track list onto a row. Width and collapsed state persist across restarts. Replaces both old playlist pages. ## Acceptance criteria - [ ] Source filter and sidebar list logic as plain functions with vitest tests - [ ] Layout persistence logic with vitest tests (read/write, corrupt value falls back to defaults) - [ ] Create, rename, delete and drag-to-add work, including on a Deezer-linked Playlist - [ ] Old playlist pages removed - [ ] Verified by running the app ## Blocked by - #39 - #36
Author
Owner

Implemented in 481ce1b and 48eb74f. Not yet verified by interacting with the running app (only smoke-launched): create/rename/delete/drag-to-add, incl. on Deezer-linked Playlists.

Implemented in 481ce1b and 48eb74f. Not yet verified by interacting with the running app (only smoke-launched): create/rename/delete/drag-to-add, incl. on Deezer-linked Playlists.
Sign in to join this conversation.
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
SBDeveloper/medley#40
No description provided.