Skip to content

SutanuNandigrami/biblichor

Repository files navigation

biblichor

Python Vue 3 FastAPI Tests License: AGPL v3

Self-hosted automation that watches your reading lists, finds the books on Anna's Archive (with Welib, LibGen, archive.org, and KindleBangla fallbacks), converts them, and emails them to your Kindle — with a Vue 3 dashboard, an integrated BookOrbit library (reader + Kobo sync + OPDS), and a scheduler you control from the browser.

biblichor dashboard


What you get

  • Acquisition pipeline — Goodreads / Hardcover / manual sources → ranked scraper chain (curl-cffi, FlareSolverr, CloakBrowser, Playwright) → score / auto-pick → download → convert → email to Kindle.
  • Integrated reader (BookOrbit) — every book biblichor delivers also lands in BookOrbit's library: in-browser EPUB/PDF reader, Kobo auto-push, KOReader two-way sync, OPDS catalog, reading statistics.
  • Dashboard-driven — queue, sources, scrapers, mirrors, scoring, schedule, settings, logs, library: all from the browser. The CLI exists for headless installs but the SPA is the primary surface.
  • First-run BookOrbit setup wizard — admin account, library creation, encrypted credential storage, scan + doctor buttons — all inside biblichor's /library page. No CLI required after the initial bootstrap.sh.

Quick start

git clone https://github.com/SutanuNandigrami/biblichor.git
cd biblichor
./deploy/bootstrap.sh

bootstrap.sh prompts for Gmail, your @kindle.com address, and the BookOrbit admin credentials, then brings the whole stack up (biblichor + FlareSolverr + BookOrbit + Postgres) and validates it with bookorbit-doctor. ~5 minutes end to end.

When it's done:

URL What
http://localhost:8090 biblichor dashboard
http://localhost:8090/library First-run BookOrbit setup wizard + sync surfaces
http://localhost:3000 BookOrbit (reader, Kobo, KOReader, OPDS)
http://localhost:8090/healthz Component-level health probe

Documentation

Full guides live in docs/wiki/ and are mirrored to the GitHub wiki:

Screenshots

Queue
Queue
Sources
Sources
Scrapers
Scrapers
Mirrors (with bench)
Mirrors
Scoring config
Scoring
Book detail (search trace + candidates)
Book detail

Stack

  • Backend — Python 3.12, FastAPI, Pydantic v2, APScheduler, SQLite WAL, aiosmtplib, httpx, curl-cffi, BeautifulSoup, rapidfuzz
  • Anti-bot — FlareSolverr, CloakBrowser stealth Chromium, Playwright
  • Frontend — Vue 3 + Vite + TypeScript + Tailwind + shadcn-vue + Pinia + Vue Router + Lucide icons
  • Conversion — Calibre CLI (ebook-convert, ebook-meta)
  • Reader / sync — BookOrbit in its own container; biblichor drops books into a shared mount

Acknowledgements

License

GNU Affero General Public License v3.0 (AGPL-3.0) — see LICENSE.

AGPL is strong copyleft with a network-use clause: if you run a modified biblichor as a service that users access over a network, you must make the source available to those users. Since this repo is already public, simply linking to it satisfies that obligation. Personal self-hosted use has no additional obligations.

Releases

No releases published

Packages

 
 
 

Contributors