Claude
|
9d74769029
|
Add deck tabs, uniform action buttons, lyric reports in the player panel and a song list in the lyrics studio
|
2026-09-30 15:57:11 +00:00 |
|
Claude
|
e64880c163
|
Redesign playlist header, player deck, now-playing actions and lyrics panel layout
|
2026-09-30 15:29:44 +00:00 |
|
Claude
|
3fb1d29d5a
|
Redesign admin as a tabbed lyrics studio with undo, tap-sync pad and reported-line triage
|
2026-09-30 15:21:11 +00:00 |
|
Claude
|
04a74ab45d
|
Redesign service-mode controls and add per-profile wrong-lyric-line reports
|
2026-09-30 15:15:07 +00:00 |
|
Claude
|
0d68e7e72f
|
plan: record commit hashes in the queue index
|
2026-09-30 08:05:17 +00:00 |
|
Claude
|
84cd00368d
|
Add a P2P panel to the admin page
|
2026-09-30 08:02:52 +00:00 |
|
Claude
|
c55cf1f651
|
plan: start 019-admin-p2p-panel-4dc623
|
2026-09-30 07:58:43 +00:00 |
|
Claude
|
60a28fc593
|
Restore an evicted server copy from an online holder
|
2026-09-30 07:58:42 +00:00 |
|
Claude
|
6d3cefa874
|
plan: start 018-server-rehydrate-from-peer-4fb8bd
|
2026-09-30 07:54:34 +00:00 |
|
Claude
|
c8837befed
|
Download a verified file from another device over WebRTC
|
2026-09-30 07:54:34 +00:00 |
|
Claude
|
458aff757a
|
plan: start 017-peer-transfer-1faaa7
|
2026-09-30 07:50:38 +00:00 |
|
Claude
|
8d57a654c1
|
Let a device hand a file to the server for hashing and validation
|
2026-09-30 07:50:38 +00:00 |
|
Claude
|
30e61de36f
|
plan: start 016-intake-and-server-verification-cfe031
|
2026-09-30 07:45:13 +00:00 |
|
Claude
|
61d0274896
|
Show peer availability with stale markers and add Sharing settings
|
2026-09-30 07:45:13 +00:00 |
|
Claude
|
780624347f
|
plan: start 015-availability-ui-and-settings-3b9397
|
2026-09-30 07:42:35 +00:00 |
|
Claude
|
6fa930ad62
|
Add the /ws/p2p presence and signalling hub and the holders endpoint
|
2026-09-30 07:42:35 +00:00 |
|
Claude
|
ef7d08f16a
|
plan: start 014-p2p-presence-hub-ceced8
|
2026-09-30 07:38:47 +00:00 |
|
Claude
|
c629ff5836
|
Register devices and report verified holdings to the server
|
2026-09-30 07:38:47 +00:00 |
|
Claude
|
76e0d2f72d
|
plan: start 013-device-identity-and-holdings-3ba493
|
2026-09-30 07:31:18 +00:00 |
|
Claude
|
6af96622dd
|
Add the on-device IndexedDB file registry and hash saves while downloading
|
2026-09-30 07:31:18 +00:00 |
|
Claude
|
8b7b2a62bd
|
plan: start 012-device-file-registry-288d55
|
2026-09-30 07:27:31 +00:00 |
|
Claude
|
b56be586ee
|
Add an incremental SHA-256 library for the browser and node tests
|
2026-09-30 07:27:31 +00:00 |
|
Claude
|
a27788a80a
|
plan: start 011-browser-sha256-e1793d
|
2026-09-30 07:25:56 +00:00 |
|
Claude
|
eb3fe45761
|
Count views and evict server copies by retention criteria before LRU
|
2026-09-30 07:25:56 +00:00 |
|
Claude
|
f12ca87131
|
plan: start 010-views-and-retention-d0c6ca
|
2026-09-30 07:18:52 +00:00 |
|
Claude
|
ea56d286b3
|
Hash every validated server copy and register it as verified content
|
2026-09-30 07:18:52 +00:00 |
|
Claude
|
b19193841c
|
plan: start 009-server-content-hash-186e7f
|
2026-09-30 07:11:55 +00:00 |
|
Claude
|
167df35a97
|
Add P2P tables, config flags and db helpers
|
2026-09-30 07:11:55 +00:00 |
|
Claude
|
2d98b25340
|
plan: start 008-p2p-schema-and-config-127966
|
2026-09-30 07:04:53 +00:00 |
|
Claude
|
9cac21afce
|
Keep one long-lived yt-dlp worker process instead of spawning per call
|
2026-09-30 07:04:53 +00:00 |
|
Claude
|
b8658f3a9d
|
plan: start 007-ytdlp-worker-045800
|
2026-09-30 06:58:05 +00:00 |
|
Claude
|
556436da34
|
Answer searches from YouTube InnerTube directly with yt-dlp fallback
|
2026-09-30 06:58:05 +00:00 |
|
Claude
|
d61809f5c4
|
plan: start 006-innertube-search-48066b
|
2026-09-30 06:53:48 +00:00 |
|
Claude
|
b24366d6c0
|
Warm the stream cache for likely next plays
|
2026-09-30 06:53:48 +00:00 |
|
Claude
|
67c2f6e46c
|
plan: start 005-warm-streams-on-intent-47b3d3
|
2026-09-30 06:50:31 +00:00 |
|
Claude
|
e2a60792b9
|
Coalesce concurrent resolveStreams calls for the same video
|
2026-09-30 06:50:31 +00:00 |
|
Claude
|
617df320c7
|
plan: start 004-coalesce-stream-resolves-a92d40
|
2026-09-30 06:47:04 +00:00 |
|
Claude
|
663a33573a
|
Self-host the three web fonts and drop the render-blocking Google Fonts CSS
|
2026-09-30 06:47:04 +00:00 |
|
Claude
|
1001b85f40
|
plan: start 003-self-host-fonts-89466b
|
2026-09-30 06:45:11 +00:00 |
|
Claude
|
794410916a
|
Serve the app shell gzip/brotli-compressed with ETags
|
2026-09-30 06:45:11 +00:00 |
|
Claude
|
7229ca16b9
|
plan: start 002-compress-and-etag-shell-bd459c
|
2026-09-30 06:41:54 +00:00 |
|
Claude
|
7781e0a116
|
Add startup, search and play timing marks plus yt-dlp duration logs
|
2026-09-30 06:41:50 +00:00 |
|
Claude
|
7b818baf8d
|
plan: start 001-perf-timing-marks-105acc
|
2026-09-30 06:39:48 +00:00 |
|
Claude
|
c17bd4c9ac
|
Queue executable speed and peer-to-peer sharing plans with tested patches and harnesses
|
2026-09-29 19:03:12 +00:00 |
|
Claude
|
a0ffc1b493
|
Refocus the improvement plan on speed and new features
|
2026-09-29 17:40:57 +00:00 |
|
Claude
|
92985d209a
|
Add a phased improvement plan for the app
|
2026-09-29 17:35:55 +00:00 |
|
Jonathan Sykes
|
56d0838391
|
support shareable search links via a ?q= URL parameter
|
2026-09-30 00:19:20 +08:00 |
|
Jonathan Sykes
|
74777ef87f
|
show a lightning icon on recent searches that will load instantly
|
2026-09-30 00:18:22 +08:00 |
|
Jonathan Sykes
|
6ff9f86bd8
|
cache /api/search results for 3 minutes to skip repeat yt-dlp spawns
|
2026-09-30 00:17:44 +08:00 |
|
Jonathan Sykes
|
4f0ee45980
|
cache recent search results locally so re-running one is instant
|
2026-09-30 00:16:35 +08:00 |
|