Skip to main content

max / makenotwork

Add unified media player plan to todo 5-phase plan to unify audio and video playback: extract shared media-player.js/css, make state machine media-type aware (dual-element gapless for audio, single-element for video), create /watch/ route, add keyboard shortcuts. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Author: Max J. <87768334+MaxJMath@users.noreply.github.com> · 2026-05-05 19:47 UTC
Commit: 43cec425c08eac2fb546b2113d08913ff459bace
Parent: ed694de
1 file changed, +11 insertions, -1 deletion
@@ -39,7 +39,17 @@ Dashboard restructure complete (Phases 1-6 in todo_done.md). Tab layout: Project
39 39 - [x] Extract item-details.js (~350 lines) — bundle, section, tag management from item_details.html. Uses htmx:afterSwap for re-init on tab swap
40 40 - [x] Extract item-upload.js (~220 lines) — audio + version upload from partials. htmx:afterSwap re-init
41 41 - [x] Extract blog-editor.js (~100 lines) — from dashboard-blog-editor.html. Data attributes for project/post IDs
42 - - [ ] (Deferred) Extract audio-player.js (~450 lines) — complex state machine, full page load only, low priority
42 + - [ ] (Deferred) Extract audio-player.js (~450 lines) — will happen as part of unified media player below
43 +
44 + ### Unified Media Player
45 +
46 + Unify audio and video playback into one shared component. Video gets custom controls, insertions, chapters, speed, volume, progress persistence — matching the audio experience. Plan at `~/.claude/plans/eager-ancient-salmon.md`.
47 +
48 + - [ ] **Phase 1:** Extract media-player.js + media-player.css from audio_player.html (no behavior change, just extraction)
49 + - [ ] **Phase 2:** Make state machine media-type aware (audio: dual-element gapless; video: single-element with segment advancement)
50 + - [ ] **Phase 3:** Create unified media_player.html template + /watch/{slug} route for video items
51 + - [ ] **Phase 4:** Update item.html video section — poster + "Watch" button linking to /watch/ (matches /listen/ pattern)
52 + - [ ] **Phase 5:** Add keyboard shortcuts (Space, arrows, M, F, S) to unified player
43 53
44 54 #### Discoverability
45 55 - [ ] Add Media Library access from content editors — "Insert Image" button in blog/item editors