github new-usemame/Calibre-Web-NextGen v4.0.32
v4.0.32 — Hide books at user level

latest releases: v4.0.170, v4.0.169, v4.0.168...
one month ago

What's new

Hide books at the user level. Got a big library full of stuff you've collected but don't actually want to read? Hit the new eye-icon on any book detail page and the book disappears from your index, search, OPDS feeds, magic shelves, and KOReader sync — for your user only. Other users on the same instance still see it. Resolves #64.

How to use it

  1. Open any book's detail page.
  2. Click the eye-close icon (next to the Archive button).
  3. Book disappears from your library views.
  4. Visit /hidden to see what you've hidden, click the eye-open icon to bring a book back.

Why this is different from archive

Archive is a sync-pause / Kobo-state mechanism — it tells your devices to stop syncing the book. Hide is a personal-library declutter — book stays fully synced and accessible to other users; you just don't see it. They're separate tables, separate semantics, you can use either independently.

docker pull ghcr.io/new-usemame/calibre-web-nextgen:v4.0.32

Or use :latest. Existing data preserved.

Regression coverage

10 new unit tests pin the model invariants (per-user × book_id uniqueness, multi-user same-book OK), the common_filters() signature + actual SQL output (the NOT IN clause carries the user's hidden book ids), and the route shape. The allow_show_hidden=True escape hatch on the /hidden listing is pinned by an explicit test — without it, users couldn't see what they hid in order to unhide it, defeating the whole feature.

Credits

Reporter: operator (fork issue #64).

Don't miss a new Calibre-Web-NextGen release

NewReleases is sending notifications on new releases.