Self-hosted reading server for manga, comics, webtoons, and EPUB/PDF books, with browser readers and sharing for family and friends.
bndct-devops/tome
Self-hosted ebook library server with a built-in reader, KOReader reading sync, OPDS feed, and reading statistics, shipped as one Docker image.
Open-source alternative to:Calibre-Web
Komga
Kavita
- Stars
- 112
- Forks
- 18
- Open issues
- 3
- Last commit
- 3 days ago
What is it?
Tome is a self-hosted ebook library server built with FastAPI, React, and SQLite. Its main difference from typical library managers is its KOReader integration: a custom TomeSync plugin records reading sessions on the e-reader and syncs positions in both directions between the device and the web interface, including while the device is offline.
The server builds reading statistics from those sessions, covering streaks, time-of-day patterns, reading pace, completion estimates, and a monthly calendar view. Metadata can be fetched from Hardcover, Google Books, and OpenLibrary and compared side by side. Hardcover sync can optionally push ratings, progress, and finish dates to a user's profile.
The built-in reader handles EPUB, CBZ/CBR manga, and PDF in the browser, with two-page spreads, RTL mode, and webtoon scrolling. An OPDS feed lets clients such as KOReader download books, and optional OIDC single sign-on supports providers like Authelia and Keycloak.
Key features
- 01Records reading sessions from KOReader via the TomeSync plugin and syncs positions both ways.
- 02Reading statistics including streaks, time-of-day heatmaps, pace, and completion estimates.
- 03Built-in reader for EPUB, CBZ/CBR, and PDF with two-page and RTL modes.
- 04OPDS feed for downloading books from e-reader apps.
- 05Metadata lookup from Hardcover, Google Books, and OpenLibrary with a diff view.
- 06Optional OIDC single sign-on and role-based access control.
Use cases
- Running a household ebook library on a NAS or home server with KOReader devices.
- Tracking reading habits and progress across e-reader and browser.
- Managing a manga or comic collection with a browser-based reader.
- Serving an OPDS catalog to e-ink readers on a local network.
Quick start
- 1
Start Tome with Docker (container runs on port 8080)
docker run -d --name tome --restart unless-stopped -p 8080:8080 -v ./data:/data -v ./books:/books -v ./bindery:/bindery ghcr.io/bndct-devops/tome:latest - 2
Open http://localhost:8080 and follow the setup wizard to create your admin account
Things to know
- Requires Docker and a running Tome container; TOME_SECRET_KEY must be set.
- Full KOReader sync features need KOReader v2024.07 or newer and the custom TomeSync plugin.
- Some features depend on the Hardcover, Google Books, or OIDC services being configured.
- Licensed under AGPL-3.0, a copyleft license with network-use obligations.
In collections
Topics
FAQ
- What is tome?
- Self-hosted ebook library server with a built-in reader, KOReader reading sync, OPDS feed, and reading statistics, shipped as one Docker image. Tome is a self-hosted ebook library server built with FastAPI, React, and SQLite. Its main difference from typical library managers is its KOReader integration: a custom TomeSync plugin records reading sessions on the e-reader and syncs positions in both directions between the device and the web interface, including while the device is offline.
- Is tome free to use? What license does it have?
- tome is open source under the AGPL-3.0 license. Check the license terms before using it in commercial products.
- Is tome still maintained?
- Actively maintained. The last commit to tome was on Nov 3, 2026.
- What can I use tome for?
- Running a household ebook library on a NAS or home server with KOReader devices. Tracking reading habits and progress across e-reader and browser. Managing a manga or comic collection with a browser-based reader. Serving an OPDS catalog to e-ink readers on a local network.
- How do I install tome?
- Start Tome with Docker (container runs on port 8080): docker run -d --name tome --restart unless-stopped -p 8080:8080 -v ./data:/data -v ./books:/books -v ./bindery:/bindery ghcr.io/bndct-devops/tome:latest Open http://localhost:8080 and follow the setup wizard to create your admin account
- Where can I get tome?
- The source code and installation instructions are on GitHub: https://github.com/bndct-devops/tome
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Self-hosted web server for managing your ebook library, with OPDS, KOReader Sync and an API for the BookHeaven Reader Android app.
A self-hosted library and reading platform for ebooks, PDFs, audiobooks, and comics, with progress sync across web, iPhone, Kobo, and KOReader.
Self-hosted media server for comics, manga, BDs, magazines and eBooks, with a web reader, OPDS feeds and Kobo/KOReader sync.
A self-hosted server for comics, manga and digital books, with OPDS support and built-in readers for common e-book and comic formats.
A self-hosted personal ebook library web app built on Calibre, with online reading, OPDS, Kindle push and multi-user support.