Commit Graph

1221 Commits

Author SHA1 Message Date
neon f3a52302ca fix(kobo): correct sync header, state array, and ReadingStates protocol 2026-02-10 23:53:20 -06:00
neon 55c104f173 fix: resolve all ESLint errors across server and client 2026-02-10 23:06:44 -06:00
neon 6de870a0b5 feat(kobo): add Kobo device sync with kepubify and collection support 2026-02-10 05:46:34 -06:00
neon d44d68cd12 feat(opds): implement OPDS catalog with cover token auth 2026-02-08 22:57:09 -06:00
neon e232c44d88 docs: add developer onboarding guide and replace boilerplate READMEs 2026-02-07 10:28:00 -06:00
neon 9923d3871f fix(cover): improve epub cover extraction with HTML and sidecar fallback 2026-02-07 08:59:25 -06:00
neon 448c6b05bb feat: implement bulk book delete with inline confirmation 2026-02-06 18:07:22 -06:00
neon 00a333d4f1 feat(client): add horizon background and remove legacy patterns 2026-02-06 00:19:40 -06:00
neon 68a51e52c0 feat(client): add background picker to appearance popover 2026-02-05 19:25:55 -06:00
neon 1c3c8139c9 fix(books): fix rating persistence and overhaul BookListRow UX 2026-02-05 18:11:01 -06:00
neon d0b54beb95 feat(books): add year, progress, rating, and fields to book list row 2026-02-05 15:39:35 -06:00
neon 068359727d feat(books): highlight primary format and add inline open in list row 2026-02-05 13:51:19 -06:00
neon a8191d9cf6 fix(books): prevent filter builder rows disappearing in lens dialog 2026-02-03 15:33:29 -06:00
neon 734df9a83d feat: add collections - icon support, edit dialog, full CRUD 2026-02-03 14:39:52 -06:00
neon aec4af18a5 chore(client): remove placeholder Scanner settings and Browse section 2026-02-03 11:13:10 -06:00
neon 7c9663118b fix: enforce library access check on CBZ endpoints 2026-02-02 11:02:14 -06:00
neon 676ca4c1a7 feat(collections): add full CRUD with multi-collection assignment 2026-02-01 20:25:16 -06:00
neon 33208254d9 feat: show book counts per library and lens in sidebar 2026-02-01 15:17:09 -06:00
neon 738b9b6146 feat: persist sort preference per library to localStorage 2026-01-31 12:10:01 -06:00
neon b2ea1cca8b feat(books): save library filters to localStorage and guard filter rules 2026-01-31 00:48:05 -06:00
neon 32410b340c feat(scanner): detect moved books via inode matching and propagate 2026-01-30 05:05:47 -06:00
neon 325d0f6f0f fix: preserve book file rows on delete so restored files keep their IDs 2026-01-28 12:47:51 -06:00
neon 426bc5fc82 feat(scanner): detect missing books via watcher and propagate to UI 2026-01-28 07:58:26 -06:00
neon 14ebb843bd feat(cover): replace client-side cache busting with backend ETag headers 2026-01-26 23:09:28 -06:00
neon e46c5e06c0 fix(scanner): wipe covers in scan-test to prevent stale cover data 2026-01-26 21:54:11 -06:00
neon a25ce99a36 fix(server): pass through 429 status and exempt authenticated requests 2026-01-26 21:18:15 -06:00
neon 1eedc9b255 fix(books): filter non-readable formats from book card open menu 2026-01-26 16:38:30 -06:00
neon a00c5a54dd feat(books): add book detail page with tabs and keep-alive grid scroll 2026-01-26 15:33:18 -06:00
neon ee05c50b72 feat(cover): fix EPUB cover extraction for namespace-prefixed OPF 2026-01-25 04:45:28 -06:00
neon 0cbcfe7932 fix(library): cascade delete folder FKs and use diff-based updates 2026-01-25 01:02:28 -06:00
neon 71505ad05d feat(client): expand accent palette to 15 vivid and 15 pastel colors 2026-01-24 23:45:37 -06:00
neon 4effca0813 feat(books): add quick view panel and proportional cover card overlay 2026-01-24 15:08:33 -06:00
neon 1562f730d2 feat(books): improve list view with series badges and click navigation 2026-01-23 08:19:26 -06:00
neon 0f1bc55b24 refactor: split AppHeader into global nav and per-view ViewHeader 2026-01-21 19:20:01 -06:00
neon bc1ee837bf feat(books): add lens with query engine, filter builder, and icon picker 2026-01-21 18:07:07 -06:00
neon 5e1c211067 fix(client): make display settings refs singletons for live updates 2026-01-21 15:36:39 -06:00
neon 73d66b75e3 feat(scanner): add live scan progress via WebSocket and auto-scan 2026-01-19 16:48:11 -06:00
neon 2033a3d719 feat(library): add deletion with cover cleanup and shared state sync 2026-01-16 02:43:59 -06:00
neon 244d38afe8 feat(reader): add settings system with per-book delta and defaults 2026-01-16 02:00:38 -06:00
neon 86ff97bc82 feat(client): add responsive header with global search and filter bar 2026-01-15 05:38:45 -06:00
neon 588c1b8972 feat(client): add native image loading via cookie and sonner toasts 2026-01-15 00:10:29 -06:00
neon 760cc6476f feat(library): add creator wizard, folder picker, and full CRUD 2026-01-14 13:13:07 -06:00
neon 8dea90d966 feat(docker): add monorepo Docker build with auto-migrate and pdf-lib 2026-01-13 14:28:36 -06:00
neon 7916454fb9 feat(auth): redesign login page with gradient blobs and glass card 2026-01-13 09:22:16 -06:00
neon 477c68122f feat(auth): add OIDC/SSO support with RP-initiated logout and settings 2026-01-13 08:23:05 -06:00
neon 45f7c73ecb feat: add auth, RBAC, admin panel, and JWT-protected routes 2026-01-12 15:05:39 -06:00
neon 015028240c feat: library background patterns with settings picker 2026-01-08 11:29:28 -06:00
neon c6224bd6fb feat: add auth schema, consolidate to single baseline migration 2026-01-08 08:00:29 -06:00
neon e1cd09baeb feat: settings page with slide-over drawer (option B, mobile-friendly) 2026-01-07 21:20:55 -06:00
neon f021cfa076 feat: settings drawer — mobile-responsive two-step nav 2026-01-06 22:23:36 -06:00