Skip to content

Library player: remember speed, add end-of-chapter sleep timer - #9

Merged
techmore merged 1 commit into
mainfrom
claude/library-player-speed-sleep
Nov 3, 2026
Merged

techmore merged 1 commit into
mainfrom
claude/library-player-speed-sleep

Conversation

@techmore

@techmore techmore commented Nov 3, 2026

Copy link
Copy Markdown
Owner

Two leftovers from the 2026-11 UX review (docs/ux-review-2026-11/README.md, findings 15 and 16).

  • Speed is remembered. The library player reads and saves sonder.player.rate, the key the rails page already uses, so a speed chosen on either player sticks. Unknown values fall back to 1×.
  • End of chapter sleep. The sleep panel has an "End of chapter" option, shown only while a chapter is playing. Playing across the chapter end pauses there. A seek well past it follows the chapter now playing instead of pausing at once. Picking another timer, or loading another book, clears it.

Testing

  • node --test server/internal/httpapi/web/library.test.cjs: 103 pass, 2 of them new (chapter-end pause, seek-past follow, hidden without chapters, speed saved).
  • Not tested in a browser. Per AGENTS.md there is no local Sonder runtime; production verification happens after the deploy.

🤖 Generated with Claude Code

The library player reset to 1x on every load, while the rails page already
saved sonder.player.rate. Both players now share that key.

The sleep timer offered End of part/book but not End of chapter, though
chapter markers are loaded. It now offers End of chapter while a chapter
is playing. A seek far past the chapter end follows the new chapter
instead of pausing at once, and loading another book clears it.

Closes findings 15 and 16 in docs/ux-review-2026-11.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@techmore
techmore merged commit 91e20f5 into main Nov 3, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant