daniel-c-harvey
43f54cb950
Merge branch 'p2-w1-filter-views' into dev
2026-06-10 12:43:33 -04:00
daniel-c-harvey
10256677ac
docs: close Phase 2.2/2.3 — move to COMPLETED.md, update DeepDrftPublic proxy CLAUDE.md
2026-06-10 10:58:16 -04:00
daniel-c-harvey
5cae83b9ed
feat: add search/album/genre filtering and /albums + /genres browse pages
2026-06-10 10:54:56 -04:00
daniel-c-harvey
b372bee365
Merge branch 'stream-now-button' into dev
2026-06-09 07:25:25 -04:00
daniel-c-harvey
9be35e5a58
refactor: extract StreamNowButton component shared by hero and nav menu
2026-06-09 07:00:37 -04:00
daniel-c-harvey
aaa9f732ae
feat: replace ?offset= seek with HTTP Range streaming across API, proxy, and client
...
- API: enableRangeProcessing true on no-offset FileStream path
- Proxy: transparent Range relay, forwards 206/416/Content-Range verbatim
- TrackMediaClient: Range: bytes=X- replaces ?offset=X; response disposed via TrackMediaResponse
- StreamDecoder: reinitializeForRangeContinuation retains wavHeader, counts raw PCM against 206 Content-Length
- AudioPlayer: seekBeyondBuffer adds headerSize for file-absolute offset; duration guard prevents continuation overwriting full-track duration
- StreamingAudioPlayerService: seek guard corrected to >= 0 (file-absolute offset contract)
2026-06-09 07:00:35 -04:00
daniel-c-harvey
760e9a1982
fix: Adjust Spectrum Bar Colors
Deploy DeepDrftPublic / Build & Publish (push) Successful in 3m37s
Deploy DeepDrftPublic / Deploy (push) Successful in 1m23s
2026-06-09 06:23:23 -04:00
daniel-c-harvey
58725c4646
feat: true RMS dBFS level measurement for LevelMeterFab via getFloatTimeDomainData
2026-06-08 14:40:11 -04:00
daniel-c-harvey
2e165d0aef
feat: render album art in track detail cover slot, falling back to gradient placeholder
2026-06-08 07:09:39 -04:00
daniel-c-harvey
9015411f12
Merge branch 'p2-w5-stream-now' into dev
2026-06-07 18:35:37 -04:00
daniel-c-harvey
0d4ef369b9
feat: Stream Now instant-play of a random track from the nav button
2026-06-07 18:33:08 -04:00
daniel-c-harvey
ea535e0c7e
Merge branch 'frame-player-cors' into dev
2026-06-07 17:19:38 -04:00
daniel-c-harvey
ceb0984262
fix: force FramePlayer to WASM-only render mode; document CORS policy intent
2026-06-07 17:16:49 -04:00
daniel-c-harvey
7cd85f0bb1
fix: convert absolute pause position to buffer-relative on resume after seek-beyond-buffer
2026-06-07 16:55:31 -04:00
daniel-c-harvey
465cb1ff6c
feat: allow /FramePlayer to be embedded in external iframes via CORS + CSP frame-ancestors
2026-06-07 16:53:49 -04:00
daniel-c-harvey
c766cdf5b8
Merge branch 'p2-w2-t1-public-image' into dev
2026-06-07 16:41:39 -04:00
daniel-c-harvey
fa28bfb5cc
feat: add Share popover to track detail page
2026-06-07 16:38:37 -04:00
daniel-c-harvey
10cb96ef7c
feat: add public image proxy and wire TrackCard cover art to api/image/{entryKey}
2026-06-07 16:33:24 -04:00
daniel-c-harvey
858110306c
fix: preserve full-track duration after seek-beyond-buffer reinit
2026-06-07 15:09:48 -04:00
daniel-c-harvey
daa334a947
fix: seek lower-bound guard and pointer-down callback ordering
...
AudioPlayer.ts: route seeks below bufferStart to seekBeyondBuffer;
previous missing lower-bound caused clamped playback after first seek.
WaveformSeeker: fire OnSeekStart/OnSeekChange before capturePointer
await to prevent fast-click race that locked _isSeeking true.
Latent: WavOffsetService encodes remaining-only DataSize, overwriting
JS this.duration after seek — not fixed here, scope separately.
2026-06-07 15:02:34 -04:00
daniel-c-harvey
bd15b66aee
feature: Home Page & Footer Mobile Friendly
Deploy DeepDrftAPI / Build, Publish & Bundle (push) Successful in 1m56s
Deploy DeepDrftManager / Build & Publish (push) Successful in 1m3s
Deploy DeepDrftPublic / Build & Publish (push) Successful in 3m22s
Deploy DeepDrftAPI / Deploy (push) Successful in 1m33s
Deploy DeepDrftManager / Deploy (push) Successful in 1m27s
Deploy DeepDrftPublic / Deploy (push) Successful in 1m29s
2026-06-07 13:48:12 -04:00
daniel-c-harvey
9ce2631bf4
feature: AudioPlayer Enhancements
Deploy DeepDrftAPI / Build, Publish & Bundle (push) Successful in 1m59s
Deploy DeepDrftManager / Build & Publish (push) Successful in 59s
Deploy DeepDrftPublic / Build & Publish (push) Successful in 3m30s
Deploy DeepDrftAPI / Deploy (push) Successful in 1m33s
Deploy DeepDrftManager / Deploy (push) Successful in 1m27s
Deploy DeepDrftPublic / Deploy (push) Successful in 1m28s
2026-06-06 20:17:50 -04:00
daniel-c-harvey
0dd33a5dfc
Add track detail page with clickable cards
2026-06-06 16:33:57 -04:00
daniel-c-harvey
c83b132522
feature: Embed Frame Player
2026-06-06 15:43:09 -04:00
daniel-c-harvey
7d3da58573
Style Polish
2026-06-06 11:52:41 -04:00
daniel-c-harvey
d055c2a548
WASM State Fixes
2026-06-06 09:59:43 -04:00
daniel-c-harvey
9c916245c1
refactor(css): scope track card styles; apply NowPlayingCard color vocabulary
2026-06-05 17:35:16 -04:00
daniel-c-harvey
7c89220667
Merge branch 'waveform-w1-t2-api' into dev
2026-06-05 16:58:59 -04:00
daniel-c-harvey
b3473aa37e
refactor(css): consolidate track-view layout and card text color rules; switch genre chip to Outlined variant
2026-06-05 16:58:07 -04:00
daniel-c-harvey
de4583b759
Add waveform profile HTTP transport: API endpoint, public proxy, content client method
2026-06-05 16:57:42 -04:00
daniel-c-harvey
61c5bee5d7
refactor(track-card): replace MudCard/MudPaper shells with plain divs, drop !important from section 8 backgrounds
2026-06-05 16:26:17 -04:00
daniel-c-harvey
1986aed902
fix(css): eliminate track card flash — transparent container, stable fallback base color, unconditional text defaults
2026-06-05 16:15:27 -04:00
daniel-c-harvey
b22b57069d
style(track-card): glass theming — remove MudBlazor color overrides, add theme-scoped CSS for title/artist/meta hierarchy and navy-glass fallback panel
2026-06-05 15:18:56 -04:00
daniel-c-harvey
b6572bead0
chore: set Microsoft.AspNetCore log level to Warning
2026-06-04 20:08:28 -04:00
daniel-c-harvey
034e9d5633
chore: remove debug console.log calls from audio TS interop
2026-06-04 18:40:45 -04:00
daniel-c-harvey
21b7661ca8
fix: suppress h1 focus ring caused by FocusOnNavigate in both Blazor apps
2026-06-04 18:18:23 -04:00
daniel-c-harvey
4171b493fd
Merge branch 'public-static-fix' into dev
2026-06-04 17:45:13 -04:00
daniel-c-harvey
fe8ddff41c
docs: document request pipeline and UseStaticFiles/MapStaticAssets relationship in DeepDrftPublic
2026-06-04 17:43:46 -04:00
daniel-c-harvey
58a94fe315
docs: explain why UseStaticFiles is not redundant with MapStaticAssets
2026-06-04 17:42:15 -04:00
daniel-c-harvey
757c1d5c85
fix: add UseStaticFiles() after UseAntiforgery() so JS audio module is served with correct Content-Type in production
2026-06-04 17:40:10 -04:00
daniel-c-harvey
194a76ce4c
Workflow Build Trigger
Deploy DeepDrftAPI / Build, Publish & Bundle (push) Successful in 2m13s
Deploy DeepDrftManager / Build & Publish (push) Successful in 1m6s
Deploy DeepDrftPublic / Build & Publish (push) Successful in 3m23s
Deploy DeepDrftAPI / Deploy (push) Successful in 1m33s
Deploy DeepDrftManager / Deploy (push) Successful in 1m29s
Deploy DeepDrftPublic / Deploy (push) Successful in 1m26s
2026-06-04 14:32:20 -04:00
daniel-c-harvey
6143d9afef
Workflow Triggers
Deploy DeepDrftAPI / Build, Publish & Bundle (push) Failing after 1m36s
Deploy DeepDrftManager / Build & Publish (push) Failing after 55s
Deploy DeepDrftPublic / Deploy (push) Has been cancelled
Deploy DeepDrftPublic / Build & Publish (push) Has been cancelled
Package install tarball / package (push) Successful in 4s
Deploy DeepDrftAPI / Deploy (push) Has been skipped
Deploy DeepDrftManager / Deploy (push) Has been skipped
2026-06-04 13:29:32 -04:00
daniel-c-harvey
7d49c64a5d
fix: enable player controls on load, clear track selection on stop and end-of-track
...
Add StateChanged multicast event to IPlayerService so AudioPlayerBar and TracksView
re-render themselves without relying on the IsFixed cascade re-render path. Clear
_selectedTrack in TracksView when IsLoaded drops (stop, unload, end-of-track). Set
IsLoaded=false in OnPlaybackEndCallback so end-of-track triggers the same clear path.
Add JS-module readiness probe in AudioInteropService; delete dead TS and buffered C#
path; consolidate GetPlayIcon/FormatTime helpers; fix misleading minimize dock icon.
2026-06-03 14:30:15 -04:00
Daniel Harvey
d2ef21066d
fix: startup fixes
2026-05-26 12:54:39 -04:00
Daniel Harvey
d41916c7b9
Merge branch 'public-proxy' into dev
2026-05-25 20:23:22 -04:00
Daniel Harvey
8adbfb195b
docs: update CLAUDE.md for DeepDrftPublic proxy layer
2026-05-25 19:40:31 -04:00
Daniel Harvey
2e8233d9d3
fix: response leak, TrackProxyController rename, restore api.json load
2026-05-25 19:37:27 -04:00
Daniel Harvey
e2a7944077
Proxy WASM track traffic through DeepDrftPublic to DeepDrftAPI
2026-05-25 19:11:00 -04:00
Daniel Harvey
02e230e236
Merge branch 'eliminate-public-api' into dev
2026-05-25 17:48:56 -04:00
Daniel Harvey
708836a169
docs: update CLAUDE.md files for DeepDrftPublic simplification
2026-05-25 17:33:32 -04:00