Commit graph

19 commits

Author SHA1 Message Date
marwin
b9c5f835f4 Add password prompt in Books tab to derive encryption key on-device
All checks were successful
Build and push Docker image / build (push) Successful in 14s
Test / test (push) Successful in 16s
Bypasses unreliable login-form interception; user enters password once
per device to derive the same PBKDF2 key cross-device.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:29:51 +01:00
marwin
bbd920d75e Revert random key fallback, rely on PBKDF2 login-derived key
All checks were successful
Build and push Docker image / build (push) Successful in 13s
Test / test (push) Successful in 15s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:16:54 +01:00
marwin
2321b80127 Auto-generate encryption key if none exists instead of throwing
All checks were successful
Build and push Docker image / build (push) Successful in 12s
Test / test (push) Successful in 15s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 21:14:16 +01:00
marwin
c965da6891 Fix USER_ID TDZ error in Firefox by using window.USER_ID
All checks were successful
Build and push Docker image / build (push) Successful in 13s
Test / test (push) Successful in 15s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 20:59:12 +01:00
marwin
93dcae84d3 Prevent Firefox from opening dragged files outside drop zone
All checks were successful
Build and push Docker image / build (push) Successful in 12s
Test / test (push) Successful in 16s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 20:55:55 +01:00
marwin
d5db882e30 Default radio tab to Saved instead of Search
All checks were successful
Build and push Docker image / build (push) Successful in 12s
Test / test (push) Successful in 15s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 19:43:23 +01:00
Marwin Schulz
2bd83f6315 Add podcast feature with feed management, Docker cron, and ebook reader assets
All checks were successful
Build and push Docker image / build (push) Successful in 12s
Test / test (push) Successful in 13s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 13:39:59 +01:00
Marwin Schulz
6d391587c8 Add ebook reader features: highlights, bookmarks, search, settings, PDF paginated mode
All checks were successful
Build and push Docker image / build (push) Successful in 11s
Test / test (push) Successful in 11s
- Backend: EBookHighlights and EBookBookmarks models with encrypted blob storage;
  GET/POST views with size guards (700 KB / 100 KB); migration applied
- Reader header: search, settings, bookmark add/list buttons
- Font & layout settings panel (font size, line height, max width, themes for EPUB;
  zoom, invert, paginated for PDF); persisted in localStorage
- Bookmarks: encrypted per-book blob, toast on add, sidebar with jump/delete
- Full-text search: EPUB TreeWalker mark injection, PDF span search; Ctrl+F / F3;
  arrow key cycling; highlights re-applied on search clear
- PDF paginated mode: single-page view, tap-zone / swipe / arrow key navigation,
  smart zoom (text bounding box → scale+translate canvas), auto-enable on mobile
- Progress tracking fixes: save before hiding overlay (was always writing 100%),
  wait for EPUB images to load before restoring scroll, PDF paginated uses page
  fraction, sendBeacon cache for unload/visibilitychange reliability
- PDF text layer disabled pending overlay rendering fix

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 13:08:42 +01:00
marwin
0d5ab9a177 Ambient-Chip sucht nur nach "ambient" statt "ambient drone"
All checks were successful
Build and push Docker image / build (push) Successful in 12s
Test / test (push) Successful in 13s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-16 21:58:32 +01:00
marwin
cb3b27f0c6 Scrollrad steuert Lautstärke in 4er-Schritten
All checks were successful
Build and push Docker image / build (push) Successful in 12s
Test / test (push) Successful in 13s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-16 21:35:27 +01:00
marwin
5c7ab8fb8f Remove volume spinner buttons, select all on click
All checks were successful
Build and push Docker image / build (push) Successful in 12s
Test / test (push) Successful in 13s
2026-03-16 21:20:31 +01:00
marwin
6c1d95ea90 Show featured stations in search tab empty state
All checks were successful
Build and push Docker image / build (push) Successful in 13s
Test / test (push) Successful in 13s
2026-03-16 21:16:28 +01:00
marwin
35d979a06a Fix volume slider, add 0-255 number input
All checks were successful
Build and push Docker image / build (push) Successful in 11s
Test / test (push) Successful in 13s
2026-03-16 21:07:12 +01:00
marwin
3761b13649 Add Django admin, FeaturedStation model, crmfrsh is superuser
All checks were successful
Build and push Docker image / build (push) Successful in 12s
Test / test (push) Successful in 13s
2026-03-16 21:01:51 +01:00
marwin
678912020c Add donation hint toast after 10 plays of same station
All checks were successful
Build and push Docker image / build (push) Successful in 11s
Test / test (push) Successful in 12s
2026-03-16 20:57:07 +01:00
marwin
945da36c95 Add AMAZON_AFFILIATE_ENABLED flag, disabled by default
All checks were successful
Build and push Docker image / build (push) Successful in 11s
Test / test (push) Successful in 12s
2026-03-16 20:47:02 +01:00
marwin
0f4a7e96d3 Fix #1 hide play btn, fix #2 dnd-dark fullscreen, close #3
All checks were successful
Build and push Docker image / build (push) Successful in 13s
Test / test (push) Successful in 14s
2026-03-16 20:38:08 +01:00
marwin
bf2f01c4c6 Add history delete button and Truckers FM station
All checks were successful
Build and push Docker image / build (push) Successful in 12s
Test / test (push) Successful in 13s
2026-03-16 20:16:30 +01:00
marwin
8c3eec4ca1 Initial commit 2026-03-16 19:19:22 +01:00