Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
bindery
command
|
|
|
discord-stats
command
discord-stats is a tiny one-shot binary that updates three Discord voice channel names with live Bindery telemetry numbers and GitHub stars.
|
discord-stats is a tiny one-shot binary that updates three Discord voice channel names with live Bindery telemetry numbers and GitHub stars. |
|
telemetry-server
command
telemetry-server is a tiny HTTP service that counts active Bindery installs.
|
telemetry-server is a tiny HTTP service that counts active Bindery installs. |
|
internal
|
|
|
abs
Package abs provides Audiobookshelf client, normalization, and import logic.
|
Package abs provides Audiobookshelf client, normalization, and import logic. |
|
api
Package api contains the HTTP handlers served under /api/v1 by the chi router.
|
Package api contains the HTTP handlers served under /api/v1 by the chi router. |
|
auth
Package auth implements password hashing, signed session cookies, the composite auth middleware (cookie OR API key OR local-bypass), and the small helpers those require.
|
Package auth implements password hashing, signed session cookies, the composite auth middleware (cookie OR API key OR local-bypass), and the small helpers those require. |
|
auth/oidc
Package oidc implements OIDC Authorization Code + PKCE for Bindery.
|
Package oidc implements OIDC Authorization Code + PKCE for Bindery. |
|
calibre
Package calibre wraps Calibre's `calibredb` command-line utility so the importer can mirror Bindery's library into a user-configured Calibre library.
|
Package calibre wraps Calibre's `calibredb` command-line utility so the importer can mirror Bindery's library into a user-configured Calibre library. |
|
config
Package config loads Bindery's runtime configuration from environment variables with sensible defaults.
|
Package config loads Bindery's runtime configuration from environment variables with sensible defaults. |
|
db
Package db contains the SQLite connection bootstrap, embedded migrations, and per-resource repository types backing the rest of Bindery.
|
Package db contains the SQLite connection bootstrap, embedded migrations, and per-resource repository types backing the rest of Bindery. |
|
decision
Package decision implements a specification-based release evaluation engine.
|
Package decision implements a specification-based release evaluation engine. |
|
downloader
Package downloader provides a unified interface for dispatching download requests to different download clients (SABnzbd, NZBGet, Transmission, qBittorrent, Deluge).
|
Package downloader provides a unified interface for dispatching download requests to different download clients (SABnzbd, NZBGet, Transmission, qBittorrent, Deluge). |
|
downloader/deluge
Package deluge provides a client for the Deluge Web UI JSON-RPC API, used to submit magnet/torrent URLs and poll status for torrent downloads.
|
Package deluge provides a client for the Deluge Web UI JSON-RPC API, used to submit magnet/torrent URLs and poll status for torrent downloads. |
|
downloader/nethint
Package nethint classifies network errors and returns a short contextual hint string to append to "could not reach …" messages shown to users.
|
Package nethint classifies network errors and returns a short contextual hint string to append to "could not reach …" messages shown to users. |
|
downloader/nzbget
Package nzbget provides a client for the NZBGet JSON-RPC API, used to submit NZB URLs and poll queue/history for Usenet downloads.
|
Package nzbget provides a client for the NZBGet JSON-RPC API, used to submit NZB URLs and poll queue/history for Usenet downloads. |
|
downloader/qbittorrent
Package qbittorrent provides a client for the qBittorrent WebUI API v2, used to submit magnet/torrent URLs and poll status for torrent downloads.
|
Package qbittorrent provides a client for the qBittorrent WebUI API v2, used to submit magnet/torrent URLs and poll status for torrent downloads. |
|
downloader/sabnzbd
Package sabnzbd provides a client for the SABnzbd JSON API, used to submit NZB URLs and poll queue/history for Usenet downloads.
|
Package sabnzbd provides a client for the SABnzbd JSON API, used to submit NZB URLs and poll queue/history for Usenet downloads. |
|
downloader/transmission
Package transmission provides a client for the Transmission BitTorrent daemon RPC API, used to submit magnet/torrent URLs and poll status for torrent downloads.
|
Package transmission provides a client for the Transmission BitTorrent daemon RPC API, used to submit magnet/torrent URLs and poll status for torrent downloads. |
|
downloader/urlbase
Package urlbase normalises user-supplied URL base paths for download-client connections.
|
Package urlbase normalises user-supplied URL base paths for download-client connections. |
|
grimmory
Package grimmory provides a client for the Grimmory self-hosted digital library API.
|
Package grimmory provides a client for the Grimmory self-hosted digital library API. |
|
hardcoverlistsyncer
Package hardcoverlistsyncer syncs Hardcover reading lists into Bindery's book catalogue as "wanted" books.
|
Package hardcoverlistsyncer syncs Hardcover reading lists into Bindery's book catalogue as "wanted" books. |
|
httpsec
Package httpsec provides outbound-URL validation to prevent SSRF attacks.
|
Package httpsec provides outbound-URL validation to prevent SSRF attacks. |
|
importer
Package importer moves completed downloads into the configured library directory using a configurable naming template, and reconciles pre-existing library files against the tracked book database.
|
Package importer moves completed downloads into the configured library directory using a configurable naming template, and reconciles pre-existing library files against the tracked book database. |
|
indexer
Package indexer coordinates book searches across multiple Newznab/Torznab indexers, filters and ranks the returned releases, and exposes a release- name parser shared by the filter pipeline and the import path.
|
Package indexer coordinates book searches across multiple Newznab/Torznab indexers, filters and ranks the returned releases, and exposes a release- name parser shared by the filter pipeline and the import path. |
|
indexer/newznab
Package newznab provides a client for Newznab- and Torznab-compatible indexers used for book search.
|
Package newznab provides a client for Newznab- and Torznab-compatible indexers used for book search. |
|
isbnutil
Package isbnutil normalizes ISBN inputs for metadata provider lookups.
|
Package isbnutil normalizes ISBN inputs for metadata provider lookups. |
|
logbuf
Package logbuf provides an in-process ring buffer for slog records so the UI can surface recent log entries without requiring shell access.
|
Package logbuf provides an in-process ring buffer for slog records so the UI can surface recent log entries without requiring shell access. |
|
metadata
Package metadata aggregates book and author data from multiple public sources (OpenLibrary, Google Books, Hardcover) behind a unified interface.
|
Package metadata aggregates book and author data from multiple public sources (OpenLibrary, Google Books, Hardcover) behind a unified interface. |
|
metadata/audible
Package audible provides a read-only client for Audible's public catalogue API (api.audible.com).
|
Package audible provides a read-only client for Audible's public catalogue API (api.audible.com). |
|
metadata/audnex
Package audnex provides a read-only client for api.audnex.us, a public JSON wrapper around Audible's catalogue.
|
Package audnex provides a read-only client for api.audnex.us, a public JSON wrapper around Audible's catalogue. |
|
metadata/dnb
Package dnb provides a read-only client for the Deutsche Nationalbibliothek (DNB) via its public SRU endpoint.
|
Package dnb provides a read-only client for the Deutsche Nationalbibliothek (DNB) via its public SRU endpoint. |
|
metadata/googlebooks
Package googlebooks provides a read-only client for the Google Books API, used as a metadata enricher for author and book details.
|
Package googlebooks provides a read-only client for the Google Books API, used as a metadata enricher for author and book details. |
|
metadata/hardcover
Package hardcover provides a read-only GraphQL client for hardcover.app, used as a metadata enricher for community ratings and series data.
|
Package hardcover provides a read-only GraphQL client for hardcover.app, used as a metadata enricher for community ratings and series data. |
|
metadata/openlibrary
Package openlibrary provides the primary book metadata client.
|
Package openlibrary provides the primary book metadata client. |
|
metrics
Package metrics exposes Bindery runtime metrics in Prometheus exposition format.
|
Package metrics exposes Bindery runtime metrics in Prometheus exposition format. |
|
migrate
Package migrate bulk-imports authors and related records into Bindery from external sources — a Readarr SQLite DB or a plain CSV of names.
|
Package migrate bulk-imports authors and related records into Bindery from external sources — a Readarr SQLite DB or a plain CSV of names. |
|
models
Package models defines the domain types shared across the API, database, scheduler, and indexer layers.
|
Package models defines the domain types shared across the API, database, scheduler, and indexer layers. |
|
notifier
Package notifier dispatches webhook notifications for grab, import, failure, and health events to user-configured HTTP endpoints.
|
Package notifier dispatches webhook notifications for grab, import, failure, and health events to user-configured HTTP endpoints. |
|
opds
Package opds builds OPDS 1.2 / Atom 1.0 catalogue feeds from Bindery's authors / books / series tables.
|
Package opds builds OPDS 1.2 / Atom 1.0 catalogue feeds from Bindery's authors / books / series tables. |
|
prowlarr
Package prowlarr provides a client for the Prowlarr API and a syncer that creates/updates/removes Bindery indexer entries from a Prowlarr instance.
|
Package prowlarr provides a client for the Prowlarr API and a syncer that creates/updates/removes Bindery indexer entries from a Prowlarr instance. |
|
recommender
Package recommender implements Bindery's content-based book recommendation engine.
|
Package recommender implements Bindery's content-based book recommendation engine. |
|
scheduler
Package scheduler runs Bindery's periodic background jobs (wanted-book search, download-status polling, metadata refresh, library rescan) via robfig/cron.
|
Package scheduler runs Bindery's periodic background jobs (wanted-book search, download-status polling, metadata refresh, library rescan) via robfig/cron. |
|
seriesmatch
Package seriesmatch contains title and position matching helpers shared by Audiobookshelf import and user-triggered series linking.
|
Package seriesmatch contains title and position matching helpers shared by Audiobookshelf import and user-triggered series linking. |
|
telemetry
Package telemetry sends an anonymous once-daily ping to api.getbindery.dev so the project maintainer can count active installs.
|
Package telemetry sends an anonymous once-daily ping to api.getbindery.dev so the project maintainer can count active installs. |
|
textutil
Package textutil contains small normalization and cleanup helpers used across imports and API responses.
|
Package textutil contains small normalization and cleanup helpers used across imports and API responses. |
|
webui
Package webui bundles the compiled React frontend assets into the Go binary via go:embed so Bindery ships as a single executable.
|
Package webui bundles the compiled React frontend assets into the Go binary via go:embed so Bindery ships as a single executable. |
|
tests
|
|
|
abscontract
Package abscontract provides the pinned Audiobookshelf contract harness and fixtures.
|
Package abscontract provides the pinned Audiobookshelf contract harness and fixtures. |
Click to show internal directories.
Click to hide internal directories.