Skip to content

Books (Chaptarr)

Detailed app behavior for books (chaptarr).

  • Per-format everything: a title’s ebook and audiobook are separate records; the author page groups tracked titles first and gives each format its own accessible tracking control (an empty control adds and searches that format).
  • Not-available titles: a movie or show the server keeps from this account (a kids account outside its limits) answers 404 on the detail route, and the page lands on a plain “This title isn’t available on this account.” line rather than the red failure text; browse grids, search, and rows simply never list it.
  • Requester book detail: search results stay navigable before and after a request, with publication metadata, synopsis, genres, and separate eBook/Audiobook request states; admins can continue into the exact live Chaptarr title. For a library-held book, a plain requester also sees a tappable author name and a tappable “Series #Position” line, both sourced from the ownership digest and opening the requester-facing author and series pages; a book the library states no series for shows no series line at all rather than a placeholder. Both links are deliberately gated on the digest: it is the only source stamped from the library’s own records, so the label and the tap target can never disagree about which author or series run they mean: a name that arrived from a metadata lookup instead renders as plain text rather than pointing at a page that cannot resolve it. A verified identifier binding supplies library availability, author/series navigation, and file actions while the selected catalog ID, title, and metadata stay intact. Publication details show the selected edition’s publisher and format when provided; a missing publication year falls back to the matched library record, while page counts stay with the selected record. The entire supplied synopsis is visible, with standalone alternate-cover notices omitted. Search results open with their complete record and make no extra metadata lookup when opened, hovered, or scrolled. Direct links without a supplied record resolve by exact ID, then by title while still requiring the selected ID. Years more than five years ahead read Date unconfirmed (year) and sort alongside undated titles on author pages. One stable format panel stays mounted through long descriptions and retains the selected native identity, state, and scroll position during same-book route refreshes, status refreshes, errors, and WebSocket updates. The Formats card uses compact rows with request actions aligned to the right; download controls appear when files are available. Genres and optional library actions follow the synopsis. Availability shows Checking… while the initial read is pending, with Retry offered only after a failed check. A saved request is acknowledged before background delivery or availability reads finish. A Links line closes the page with Goodreads and Open Library chips (Hardcover too when Chaptarr’s metadata declares its page) that open the book’s own page outside the app. The Goodreads chip opens the edition Chaptarr itself tracks, falling back to the work’s editions page when only the work is known; nothing is ever guessed from a title.
  • Owned-aware search: Book results keep the native order and foreign ID returned by Chaptarr. Exact native IDs or an unambiguous shared provider work/edition ID or validated ISBN provide format-specific Available / Requested badges; matching library titles or authors missing from the native results append below them. Distinct records stay separate. No title similarity can replace a selected identity or introduce a matching picker on the detail page. Conflicting identifiers show Library match needs attention. Author counts come from the uncapped book-library author summaries, using the same title reduction as the author shelf and detail; unavailable summaries omit counts instead of falling back to raw file statistics.
  • Full module: library with author drill-down, queue with Import Doctor, history, and wanted (missing / cutoff unmet).

View the maintained source for this page.