Jonathan Sykes
74777ef87f
show a lightning icon on recent searches that will load instantly
2026-09-30 00:18:22 +08:00
Jonathan Sykes
6480b314d5
remember recent searches on-device and show them under the search box
2026-09-29 22:08:16 +08:00
Jonathan Sykes
b6fdff2438
drop the boxed background on the saved-offline card badge
2026-09-28 20:30:13 +08:00
Jonathan Sykes
ba697e5d11
floor service-mode lyric font size and space out verses
2026-09-26 02:11:07 +08:00
Jonathan Sykes
05e85a0a3f
Give untimed lyrics one uniform line size in service mode
2026-09-24 08:34:09 +08:00
Jonathan Sykes
d64c5f2613
Lift the section rail clear of the floating mini player
2026-09-22 14:58:31 +08:00
Jonathan Sykes
f411e49e4c
Floor the party panel and rail above the bottom nav in CSS so a bad measurement cannot hide their controls
2026-09-22 14:44:30 +08:00
Jonathan Sykes
c9e021a045
Keep the watch party panel above the bottom bars so its leave button is reachable
2026-09-22 14:23:39 +08:00
Jonathan Sykes
6c4571cb33
Measure the bottom bars so the section rail is never hidden behind the mini player
2026-09-22 14:09:03 +08:00
Jonathan Sykes
530d07d920
Add a mobile section rail that follows the scroll, jumps between cards and folds the one you are on
2026-09-22 13:47:26 +08:00
Jonathan Sykes
987697e759
Paint saved playlists before the launch sync and swap a background-downloaded update instantly
2026-09-22 13:27:12 +08:00
Jonathan Sykes
2a4526578f
Show lyrics in place of the video for watch parties and sing-alongs
2026-09-21 21:03:46 +08:00
Jonathan Sykes
808306ffce
Keep the five transport buttons grouped on one line at every screen width
2026-09-21 10:33:06 +08:00
Jonathan Sykes
2987f46037
Add a scrubbable timed lyric editor to the admin page, LRCLIB regeneration tooling with lyrics skills, and keep the five playback buttons on one row on phones
2026-09-20 17:55:49 +08:00
Jonathan Sykes
b983c6ca3c
Fetch lyrics from LRCLIB (synced when available) and serve an admin media library of uploaded video and audio with cover art and embedded lyrics
2026-09-20 05:59:50 +08:00
Jonathan Sykes
9c1ec4ac51
Add presenter view, stats, lyrics worker, watch party with voice chat, timestamp sharing, soundbites, notes, transcript search, PiP, EQ, sleep fade, gestures and external players; fix the crossfade end-of-song race
2026-09-20 00:07:12 +08:00
Jonathan Sykes
ca07e1fdf1
Add gapless and crossfade playlist transitions with a mode toggle, and a waveform seek bar for audio-only playback
2026-09-19 16:12:33 +08:00
Jonathan Sykes
71fc51fb50
Add a lyrics-only service mode view with the sung line centred and auto-sized, and a free local faster-whisper script to transcribe saved songs
2026-09-19 08:33:00 +08:00
Jonathan Sykes
b82f17cd46
Add phone remote control: pair a phone with a 6-digit code or QR to drive a desktop instance's playback, queue, volume, sleep timer and service mode
2026-09-18 20:19:00 +08:00
Jonathan Sykes
524db986d2
Add shared synced lyrics, chapters and personal bookmarks with revision history, API tokens and an admin page
2026-09-18 18:10:10 +08:00
Jonathan Sykes
292a0c7e29
Show the video inline in service mode and keep audio alive in the background
2026-09-08 17:36:55 +08:00
Jonathan Sykes
a3089dde74
Add a service mode shortcut to the now-playing bar and a video panel toggle
2026-09-08 16:59:43 +08:00
Jonathan Sykes
3e1b56610f
Let a shared playlist be sent to another user by name
2026-09-08 15:52:46 +08:00
Jonathan Sykes
9366b1749c
Keep service mode full-bleed on iOS and hide the player chrome behind it
2026-09-08 11:55:15 +08:00
Jonathan Sykes
e91fe83cc7
Fill the phone screen in service mode and open it on the playing song
2026-09-08 06:51:03 +08:00
Jonathan Sykes
ee78c8561b
fix playlist name overflow with 2-line clamp
2026-08-17 02:13:51 +00:00
Jonathan Sykes
c08558cfb4
Enhance 5 layout themes with structural CSS — topbar, nav accents, mini-bar, ambient layers
2026-08-17 00:29:52 +00:00
Jonathan Sykes
9c2146aef8
Fix layout theme grid overrides breaking mobile — wrap in min-width:861px
2026-08-17 00:21:50 +00:00
Jonathan Sykes
eb6ed215fe
Add 6 selectable layout themes to Settings (Appearance)
2026-08-16 16:33:26 +00:00
Jonathan Sykes
8ef16a8b38
Add per-song notes on playlist entries
2026-08-16 13:58:22 +00:00
Jonathan Sykes
14e1d8e3dd
Add service mode set-list view with screen wake lock
2026-08-16 13:51:27 +00:00
Jonathan Sykes
c5f47514ad
Show per-playlist offline status and add a keep-offline pin
2026-08-16 13:45:19 +00:00
Jonathan Sykes
5a9304780a
Give the empty-home playlist grid the full pane height instead of a clipped 16:9 box
2026-08-16 08:52:18 +00:00
Jonathan Sykes
fa9ef000b9
Show playlists instead of the branding hero on the empty home
2026-08-15 07:19:46 +00:00
Jonathan Sykes
b2154bd9c4
Add shareable profile link to settings and sidebar
2026-08-15 06:58:43 +00:00
Claude Worker
70460232f0
feat: Add scrubber with A/B markers for video editing/downloading
2026-07-18 17:59:20 +00:00
Claude Worker
046aa67108
feat: Add visual scrubber to video editor
...
Task #69 completed by ClaudeQueue
ClaudeQueue
2026-07-18 17:50:27 +00:00
Claude Worker
8c0776f97d
feat: Add support for editing video
...
Add an Edit
2026-07-18 16:43:15 +00:00
Jonathan Sykes
88c89d66af
fix portrait PWA nav dead while playing by making body the scroll container
2026-07-10 13:55:31 +08:00
Jonathan Sykes
b8c7ad4ad1
fix: let list pane shrink in stacked layout so settings can scroll in mid-width windows
2026-07-03 06:05:16 +08:00
Jonathan Sykes
ed9f93b0b7
fix: stop playback stutter and save failures via async yt-dlp, per-download OPFS workers, lazy playback blobs, GPU composite trims, and landscape pane scrolling
2026-07-02 23:40:49 +08:00
Jonathan Sykes
2af2eebacc
feat: redesign portrait PWA as mobile app UI with thumb-zone transport, bottom-sheet modals, and floating mini-player
2026-07-02 22:38:14 +08:00
Claude Worker
2b195d3b6b
feat: add topbar adjustments for notch devices on pwa
...
Task #47 completed by ClaudeQueue
ClaudeQueue
2026-06-30 20:45:00 +00:00
Jonathan Sykes
79359dba44
feat: show app version and server build tag in settings
...
Adds an About section at the bottom of Settings displaying the app
version. In WEB mode it fetches /api/version and appends the live
server build tag so you can confirm which deploy is running.
2026-07-01 04:04:15 +08:00
Jonathan Sykes
30a05d3ebd
fix: make sidebar scroll as one unit so playlists stay reachable on short screens
...
The sidebar contained two .playlist-list blocks each with flex:1 and its own
overflow-y:auto, nested inside the sidebar's own scroll. On screens too short
to fit everything, those inner flex regions collapsed toward zero height and
the playlists became unreachable. Drop the inner scroll/flex-grow and let the
whole sidebar scroll as a single unit at any screen size.
2026-07-01 03:58:52 +08:00
Claude Worker
d9371fdea4
feat: fix portrait mode design in pwa — YouTube-style bottom bar
...
Task #46 completed by ClaudeQueue
ClaudeQueue
2026-06-30 17:02:25 +00:00
Claude Worker
fc61defba5
feat: fix portrait mode design in pwa
...
Task #44 completed by ClaudeQueue
ClaudeQueue
2026-06-30 15:36:12 +00:00
Claude Worker
136e21f1fa
feat: Follow-up: add portrait orientation design for mobile that only triggers in portrait pwa mode
...
Task #43 completed by ClaudeQueue
ClaudeQueue
2026-06-30 08:01:54 +00:00
Claude Worker
02153d877d
feat: add portrait orientation design for mobile that only triggers in portrait pwa mode
...
Task #42 completed by ClaudeQueue
ClaudeQueue
2026-06-30 06:51:31 +00:00
ClaudeQueue
05e78677b0
feat: side bar playlist and other items not present on some screensizes. make completely responsive
...
Task #40 completed by ClaudeQueue
ClaudeQueue
2026-06-30 01:06:54 +00:00