Warning
Binary archives in this release are broken — the frontend was not copied into the embed path during GoReleaser build, so http://localhost:8787 serves only a .gitkeep placeholder. Use v0.7.1 instead; it is a binary-only re-cut with identical behaviour. The Docker image ghcr.io/vavallee/bindery:v0.7.0 is built from a different pipeline and is not affected.
Polish & onboarding release. Fixes the "added an author, nothing happened for 12 hours" gap that new Sonarr/Radarr migrants hit on day one, fills in the long-broken Series view, and tightens the list-page experience with filters, sorting, and cross-page navigation.
Fixed
- Series view always empty (#46) — the
/seriesendpoint returned nothing becauseseriesandseries_booksrows were never populated during author ingestion. OpenLibrary'sseriesfield is now parsed from author-works responses and single-work lookups; after a successful book insert the correspondingseriesrow is upserted (by a stable title-derived slug) and aseries_bookslink is created with the book's position and primary-series flag. - Books page "Sort by newest/oldest" broken — sort now uses the book's release date rather than its DB insertion timestamp, so chronological ordering matches the year shown in the UI.
- Books page missing author — the table now shows an Author column (linked to the author page) and the grid view shows the author name under each cover.
Added
- Auto-search on author add (#11) — when an author is added with "Start search for books on add" enabled (default on), Bindery immediately fires an indexer search for each wanted book after fetching the author's catalogue from OpenLibrary. Previously users had to wait up to 12 hours for the first automatic grab. The search is gated on the author being monitored; unmonitored authors are unaffected.
- Auto-search on book status transition to wanted — updating a book's status to
wanted(e.g. via "Delete file" → flips imported → wanted, or a manual status edit via the API) now triggers an immediate indexer search. Same logic as the 12-hour scheduler job. Always-on for v0.7.0; asearch_on_status_changesetting can be added later if opt-out is requested. - "Start search for books on add" checkbox in the Add Author modal (default checked), matching Sonarr's phrasing. Uncheck to add an author without an immediate search.
bindery reconcile-seriesCLI subcommand — re-fetches OpenLibrary series data for every already-ingested author and backfills the series/series_books tables. Run once after upgrading from any version that did not populate series during ingestion. Idempotent; prints{"linked":<n>,"skipped":<n>}on completion. See docs/DEPLOYMENT.md for usage.- Authors page filter by monitored status — filter chips for
Monitored/Unmonitored/All, persisted per-page to localStorage. - Author Detail page — publication dates, filters, sort — books now show a Published column (sortable asc/desc by release date), with filter chips for Type (Ebook/Audiobook), Status (Wanted/Downloaded/Imported/Missing), and Publication state (Released/Upcoming).
- Book Detail page shows full metadata — author (linked), series (linked), description, publication date, language.
- Wanted page navigation — the book title and author on each Wanted row are now clickable links into the Book Detail and Author Detail pages.
Changed
NewAuthorHandlersignature — now takes*db.SeriesRepoandBookSearcherarguments (added for series upsert and auto-search). Internal API; only callers incmd/bindery/main.goare affected. No REST API change.NewBookHandlersignature — now takes aBookSearcherargument for the wanted-transition hook. Same scope note.