Commit Graph

227 Commits

Author SHA1 Message Date
neon 67ec10f703 feat: implement security audit fixes SEC-001 through SEC-031 2026-04-12 16:15:03 -06:00
neon 1f43ea2cb5 feat: enforce non-empty icons for collections, lenses, and libraries 2026-04-12 10:32:31 -06:00
neon 0aad8c0d7d feat: consolidate mobile UX and filtering updates
- improve responsive layouts and controls across dashboard, home, lens, collection, authors, and book detail surfaces

- modernize settings and metadata provider UIs, including the floating dashboard settings action and cleaner section composition

- add synced or per-view cover sizing and spacing behavior, plus expanded mobile filter and sort control patterns

- extend backend filtering with library rules and increase hardcover ID limits across schema, DTO validation, and migration metadata
2026-04-12 09:45:00 -06:00
neon 32359cebbf perf(client): reduce sidebar GPU load and tune transition visuals 2026-04-10 21:50:08 -06:00
neon a451825735 feat: centralize library creation redirect logic into a composable 2026-04-10 19:59:14 -06:00
neon c4a2cbc4d8 chore: update dependencies to latest minor and patch versions 2026-04-10 11:53:58 -06:00
neon 3fb99714d7 fix(stats): remove hardcoded library IDs from statistics page 2026-04-09 05:18:00 -06:00
neon b0ed068fd6 chore: improve download feature 2026-04-08 22:52:52 -06:00
neon 26d1e6ebc8 feat: improve header UI and optimize docker storage configuration 2026-04-08 20:34:38 -06:00
neon 1cf34fb0ab feat: improve PDF reader loading state and UI 2026-04-08 20:33:38 -06:00
neon a8b203ef4a chore: optimize docker image and scanner performance 2026-04-08 20:31:38 -06:00
neon 6de8e8bc60 feat(scanner): add live book grid during active scan 2026-04-08 05:02:57 -06:00
neon 0e9ae2ae10 feat(scanner): add kepub and audio format support to uploads 2026-04-07 13:56:58 -06:00
neon 79b4c45d88 feat: add load-from-file metadata button on book edit tab 2026-04-06 15:13:57 -06:00
neon cfc424ea37 feat: move file write settings from global to per-library 2026-04-06 14:54:50 -06:00
neon decd0f1a2e fix(server): fix migration executor bugs and schema corrections 2026-04-05 20:24:08 -06:00
neon 9fd4e162aa feat(server): harden booklore migration with adapters and E2E tests 2026-04-05 16:01:04 -06:00
neon bab3813ff8 feat(metadata): add per-field locking to protect fields from overwrites 2026-04-03 21:31:02 -06:00
neon abd06c5ccd style(books): sort search format pills and align detail cover 2026-04-03 20:54:11 -06:00
neon 847b048df7 fix(collections): prevent IconPicker from closing AddToCollectionSheet 2026-04-03 20:53:11 -06:00
neon 9dcc513a0d feat(books): add extra sort fields including user-specific progress 2026-04-03 20:52:11 -06:00
neon ca3e4822b5 feat(scanner): improve book bucket file list and destination dialog 2026-04-03 20:51:11 -06:00
neon 0a58a87239 refactor(scanner): rename staging module to book bucket 2026-04-03 20:50:11 -06:00
neon af7df49b02 feat: return hydrated collection after update and refine icon labels 2026-04-03 20:49:11 -06:00
neon 70e76600e0 feat(server): add Booklore migration with source adapter and executor 2026-04-03 20:48:11 -06:00
neon f3bab75aea fix(authors): fix photo filtering and improve metadata comparison panel 2026-04-02 08:09:00 -06:00
neon 13ddc457c7 test(reader): add comprehensive epub keyboard navigation tests 2026-04-02 08:08:00 -06:00
neon bdbe36f9e5 feat(reader): add CBZ spread layout engine and settings 2026-04-02 08:07:00 -06:00
neon fe1b70c1dc feat(reader): polish reader settings and fix PDF and CBZ issues 2026-04-02 08:06:00 -06:00
neon 00ecdc34cd test(users): add lifecycle E2E suite and harden admin contracts 2026-04-02 04:05:00 -06:00
neon efea4ba846 feat(reader): improve CBZ and ebook options layout 2026-04-01 14:51:37 -06:00
neon 777bedaa90 test(books): add exhaustive filter validator and query-builder coverage 2026-04-01 12:52:34 -06:00
neon 1fbc499ffc feat(books): show collections and collapsible genres in quick view 2026-04-01 12:01:49 -06:00
neon 0c195165e6 test(scanner): add staging ingest and finalize E2E test suite 2026-03-30 23:17:27 -06:00
neon db30a45782 test(scanner): bootstrap scanner E2E test infrastructure 2026-03-30 01:18:32 -06:00
neon 400e5fabc9 feat(books): add read status values across schema, types, and validation 2026-03-29 16:56:57 -06:00
neon e2d0789851 fix: prevent double API call on library load
- remove racy watch(loading)+loadIfSentinelVisible fallback that fired before RecycleScroller set virtual height
- add hasMore guard and total reset in useBookQuery for defensive correctness
2026-03-29 15:26:13 -06:00
neon 399fa179d2 perf: remove unused tags, metadataScore, durationSeconds from BookCard
- drop tags field and bookTags fan-out query from all BookCard paths
- drop metadataScore from BookCard select (only used in BookDetail)
- fix durationSeconds: was never selected in DB; derive audiobook badge from file format using FORMAT_TO_GROUP instead
2026-03-29 14:09:24 -06:00
neon ec25a62ebe feat: add inline not-found states for all entity views and 404 routing 2026-03-29 13:34:09 -06:00
neon 91842fe212 feat(settings): expand file naming pattern reference with examples 2026-03-29 12:23:06 -06:00
neon d5ba57f483 feat: harden nested audio metadata contract and UI consistency 2026-03-29 10:04:26 -06:00
neon efbb63e764 fix(books): fix rating display bug and trim recommendation response body 2026-03-29 09:21:23 -06:00
neon 77a1a3fecb feat: add reading progress thresholds to library settings 2026-03-28 13:34:40 -06:00
neon f628d6dfc4 feat: add book-per-file organization mode and refine library creator UI 2026-03-28 12:04:42 -06:00
neon 31422c9054 fix: add book:restored toast and fix missing events in reconcile 2026-03-28 09:21:47 -06:00
neon af9424f04a feat: add audiobook progress and refactor metadata extraction 2026-03-28 07:39:23 -06:00
neon 6daeca7ab2 feat(stats): add top series and library insight charts with backend 2026-03-27 13:16:51 -06:00
neon 10a4a2045a feat(cover): add per-library aspect ratio and per-view cover size 2026-03-26 21:14:22 -06:00
neon 61746cb62c feat: add format breakdown to Reading Clock with improved tooltip 2026-03-26 10:41:07 -06:00
neon 48a1c6bb1d fix: restore Genre Reading Time treemap colors using getThemePalette 2026-03-26 07:49:30 -06:00