Skip to content
mybibli
Roadmap

Shipped, and shipping next.

mybibli reached v1.0 after ten epics of foundational work, and is in production on the household NAS that drove the project. Beyond v1, every release is a focused theme — see what's coming next, or scroll down for what already shipped. Pre-built Docker images on Docker Hub; everything tracked openly as GitHub issues.

v1 scope 100%

Source of truth: _bmad-output/implementation-artifacts/sprint-status.yaml in the repo.

What's next

Coming up.

Planned releases, in roughly the order they will ship. Themes are stable, dates are not — mybibli is a side-project and ships when ready. Each version is bundled around one coherent user benefit. The full plan, including the tech-debt parking lot, lives in ROADMAP.md.

  1. Backlog

    Polish & community CRs

    Unscheduled

    The originally-planned v1.1–v1.7 build is complete and v1.8 closed out the themed minors. mybibli is now in GH-issue-driven polish mode: v1.9.0 was the first issue-driven feature minor (saved custom searches over the home filter/sort surface, per-provider metadata-timeout overrides in the admin System tab, the admin log-level form’s stale-version 409 fixed, and HTTP transport-crate debug chatter capped), and the latest is v1.10.0 — a 30-second undo of the last scan action (#9). New CRs are queued here until a coherent theme emerges or enough land to bundle into the next minor; patches ship independently for production bugs. The full release-by-release history lives in ROADMAP.md and on the GitHub releases page.

    • Volume-count mismatch — title shows multiple volumes when user owns only 1 (#300) — silent data corruption, pending triage; still open after v1.7.5.
    • Broader per-provider visibility for metadata fetch (#202) — docs slice shipped in v1.5; UX slice is deeper work.
    • UNIMARC conformance for title cataloging (#389) — align the title data model on the UNIMARC standard so records are interoperable with library systems (BnF, Koha, PMB); deep data-model work.
    • Long-standing flake in home-search.spec.ts:224 (#196) — downgraded to fix-when-convenient.
    • A drift of code-review findings tracked under the type:code-review-finding label.

    Full list lives in ROADMAP.md's parking lot.

  2. v2.0 candidate

    Classification, reinvented

    Exploring

    Today the "genre" field tries to be two things at once: the catalog source's idea of a section, and the owner's manual classification. v2 candidate splits them — keep Dewey for the standards-based axis, treat genre as a free-form owner-side label, and stop the auto-fetch from ever touching either.

    • Splits a longstanding entanglement that surfaced in v1.1.8's genre_id fix.
    • Will land on a minor version if a backwards-compatible path is found, on v2.0 otherwise.

    Tracked on GitHub: #206

Shipped

The ten epics

Each one ships behind a draft PR per story, gated by green CI. Each one ends with a retrospective.

  1. Epic 1

    Catalog my first book

    ✓ Done

    Project skeleton, scan field, title CRUD with ISBN scanning, volume management, contributor management, search, async metadata fetch, login. The foundation.

  2. Epic 2

    I know where my books are

    ✓ Done

    Configurable storage-location hierarchy, scan-to-shelve workflow, browse a shelf's contents, contextual guidance.

  3. Epic 3

    All my media types

    ✓ Done

    Provider chain (BnF / Google Books / Open Library / Library of Congress / MusicBrainz / OMDb / TMDb / BDGest), media-type-aware scanning, cover image management, metadata editing and re-download.

  4. Epic 4

    I manage my loans

    ✓ Done

    Borrower CRUD & search, loan registration with validation, loan return with automatic location restoration, per-borrower history.

  5. Epic 5

    My series & my collection

    ✓ Done

    E2E test stabilization, contributor deletion guard, series CRUD, title/series assignment with gap detection, BD multi-position omnibus support, browse list/grid toggle, similar titles, Dewey codes.

  6. Epic 6

    CI/CD pipeline & reliability

    ✓ Done

    GitHub Actions pipeline, seeded librarian + login-as for parallel-safe E2E, manually-edited-fields race fix, cleanup of waitForTimeout with a CI grep gate.

  7. Epic 7

    Multi-role access & security

    ✓ Done

    Anonymous browsing with role gating, session inactivity timeout with keep-alive toast, language toggle (FR/EN), strict Content Security Policy headers, scanner-guard modal interception.

  8. Epic 8

    Administration & configuration

    ✓ Done

    Admin shell with health tab, CSRF synchronizer-token middleware, user administration, reference-data management, system settings, trash view + restore, permanent delete + auto-purge, first-launch setup wizard.

  9. Epic 9

    UX polish & accessibility

    ✓ Done

    Dashboard indicators, modal-based confirmations replacing hx-confirm, status messages and empty states, connection-lost overlay, navbar polish, contextual help tooltips, keyboard shortcuts, responsive layouts, and a final WCAG 2.2 AA audit.

  10. Epic 10

    Mobile UX & sécurité closeout

    ✓ Done

    Auth threat model documented end-to-end, CSRF rejection UX (server-rendered "session expired" feedback), mobile DataTable card mode + admin tabs <select> dropdown (dual-surface pattern), axe-core extended to every entity-detail route. Closeout epic — every story grounded in a GitHub issue from the post-Epic-9 review pass, no new feature surface.

  11. Milestone

    v1.1 → v1.10 — the production line

    ✓ Live

    mybibli has been live on the household NAS that drove the project since v1.1.1 (2026-05-14). Seven themed minors (v1.2 "See what you own, find it faster" → v1.8 "Covers, honestly") delivered the original feature roadmap — browse & find, wishlist, the JSON HTTP API, valuation & stats, catalog hygiene, German/Italian locales + runtime logging, honest cover handling — each followed by a production-driven patch train. The current release is v1.10.0 — a single-feature minor adding an Undo button to the scanner feedback list, reversing your last shelving or batch-location action within 30 seconds (#9). It follows v1.9 — the v1.9.0 feature minor (saved searches, per-provider metadata timeouts, logging fixes) plus a same-day v1.9.1 patch localizing the last two client-side messages in German/Italian. Every release is documented on the GitHub releases page.

Epic complete

Epic 9 — story by story

Twenty-two stories. All shipped, retrospective complete (2026-05-10). Each story links to its merged PR via the issues view on GitHub.

9-1 Dashboard global stats card done
9-2 Dashboard recent additions done
9-3 Dashboard stats by genre done
9-4 FilterTag & unshelved indicator done
9-5 Overdue loans indicator done
9-6 Series-with-gaps indicator done
9-7 Recent activity indicators done
9-8 Loan status, role-aware done
9-9 Home page scanner state machine done
9-10 Modal foundation + delete-borrower migration done
9-11 Migrate return-loan to modal done
9-12 Migrate delete-contributor to modal done
9-13 Migrate delete-series to modal done
9-14 Migrate deactivate-user to modal done
9-15 Status messages & empty states done
9-16 Connection-lost overlay done
9-17 Navbar hamburger & scanner auto-close done
9-18 Navbar role-visibility polish done
9-19 Contextual help tooltips done
9-20 Keyboard shortcuts & cheat-sheet done
9-21 Responsive per-page layouts done
9-22 WCAG AA final audit done

Steer the next release.

The roadmap above describes the direction. The order — and which features get pulled forward, deferred, or reshaped — depends on what real users hit. If something in what's next matters to you, say so on the issue. If a feature is missing entirely, open one — every release of mybibli so far has been driven by production feedback.