mirror of
https://github.com/calibrain/shelfmark.git
synced 2026-11-15 19:18:13 +00:00
This replaces #1047, which @InfiniteAvenger opened and calibrain offered to re-review. It is Caleb's feature commit with his authorship kept, rebased onto current main, with small fixes, tests and a docs page on top. Everything is opt-in and off by default, so nothing changes for anyone who doesn't turn it on. What it adds is a **Settings, Hardcover Sync** tab with three parts that can be switched on separately: - **Shelf sync**: a Hardcover shelf (Want to Read by default) is pulled into requests on a schedule, or with a Sync now button. Requests carry the Hardcover metadata and cover. - **Automatic downloads**: synced requests are approved and a release is picked from a source priority list. A strict title, author and format match (plus a seeder minimum for torrents) decides, so anything without a confident match stays pending for manual review. - **Skip books you already own**: sync and automatic downloads ask whichever libraries are enabled under Library Check (Calibre today) and skip a book that is already there. On top of Caleb's commit I made the request owner a lookup instead of assuming user id 1, sent synced cover URLs through the proxy when the request is created, got ruff and basedpyright clean, and added tests and `docs/hardcover-sync.md`. His commit also had its own Audiobookshelf settings and a Test library connection button, written before the library check was split into providers. The button would have raised a TypeError against the current `test_connection`, so those settings are gone from this tab and an Audiobookshelf provider comes as a separate PR, which is the part of #1047 that is missing here (for now anyways...). I've run this daily for about a couple of weeks. Ruff, basedpyright and the backend suite pass (4426 passed). This is 1 of 5. As calibrain suggested, the rest are stacked on this one, each saying which number it is. Closes https://github.com/calibrain/shelfmark/pull/1047#issuecomment-6302071588 --------- Co-authored-by: InfiniteAvenger <calebewest02@gmail.com> Co-authored-by: CaliBrain <calibrain@l4n.xyz>
28 lines
870 B
Markdown
28 lines
870 B
Markdown
# Shelfmark Documentation
|
|
|
|
Shelfmark is a self-hosted interface for searching, requesting, and delivering books and audiobooks through the sources and services you choose to configure.
|
|
|
|
Use the guides below to set up the app, connect your library tools, and understand the main configuration areas.
|
|
|
|
## Getting Started
|
|
|
|
- [Installation](installation.md)
|
|
- [Directory and Volume Setup](configuration.md)
|
|
- [Environment Variables](environment-variables.md)
|
|
|
|
## Core Guides
|
|
|
|
- [Users & Requests](users-and-requests.md)
|
|
- [Hardcover Sync](hardcover-sync.md)
|
|
- [Reverse Proxy](reverse-proxy.md)
|
|
- [OIDC](oidc.md)
|
|
- [API Access](api-access.md)
|
|
- [URL Search Parameters](url-search-parameters.md)
|
|
- [MyAnonamouse Enrichment](myanonamouse-enrichment.md)
|
|
- [Library Check](library-check.md)
|
|
- [Custom Scripts](custom-scripts.md)
|
|
|
|
## Help
|
|
|
|
- [Troubleshooting](troubleshooting.md)
|