Repolode
calibrain

calibrain/shelfmark

Self-hosted web app to search and request books and audiobooks across configured sources, with multi-user requests and Calibre-friendly imports.

Stars
4,126
Forks
287
Open issues
39
Last commit
yesterday

What is it?

Shelfmark is a self-hosted web interface for finding and downloading books and audiobooks from sources you configure yourself. It can search metadata providers such as Hardcover, Open Library and Google Books, or query sources directly, and it routes downloads through torrent, usenet, IRC, Soulseek (slskd) or Webshare clients and debrid services.

It supports multiple users with a built-in request system, so admins can approve requests while others browse on their own. Authentication options include local login, OIDC single sign-on, reverse-proxy headers and reuse of a Calibre-Web user database. Downloads can be delivered into folders watched by Calibre-Web-Automated, Grimmory or Audiobookshelf, and an optional Library Check marks results you already own.

The project is distributed as Docker images, with a standard image that includes Chromium for Cloudflare challenges and a lighter Lite image. Optional Tor and WireGuard routing are available. It is explicitly a manual search and download tool, not a library manager or a monitor for new releases.

Key features

  • 01Search metadata providers or query configured sources directly
  • 02Download books and audiobooks through torrent, usenet, IRC, Soulseek and debrid clients
  • 03Multi-user accounts with a request and approval workflow
  • 04Login via local accounts, OIDC SSO, proxy headers or Calibre-Web database
  • 05Optional Library Check to skip books already in your Calibre or Audiobookshelf library
  • 06Unified download queue with live status updates

Use cases

  • Running a shared book request portal for a family or small group
  • Feeding downloads automatically into a Calibre-Web-Automated or Audiobookshelf ingest folder
  • Consolidating several book and audiobook sources behind one search interface

Quick start

  1. 1

    Download the docker-compose file

    curl -O https://raw.githubusercontent.com/calibrain/shelfmark/main/compose/docker-compose.yml
  2. 2

    Start the service

    docker compose up -d
  3. 3

    Open the web interface at http://localhost:8084 and configure your sources

Things to know

  • Feature stable but maintained on a best-effort basis, with no roadmap for new features.
  • The standard Docker image needs at least 2 GB of RAM available to the container for Direct Download.
  • Universal search mode relies on a Hardcover API key for metadata search.

In collections

Topics

FAQ

What is shelfmark?
Self-hosted web app to search and request books and audiobooks across configured sources, with multi-user requests and Calibre-friendly imports. Shelfmark is a self-hosted web interface for finding and downloading books and audiobooks from sources you configure yourself. It can search metadata providers such as Hardcover, Open Library and Google Books, or query sources directly, and it routes downloads through torrent, usenet, IRC, Soulseek (slskd) or Webshare clients and debrid services.
Is shelfmark free to use? What license does it have?
shelfmark is open source under the MIT license. Check the license terms before using it in commercial products.
Is shelfmark still maintained?
Actively maintained. The last commit to shelfmark was on Nov 6, 2026.
What can I use shelfmark for?
Running a shared book request portal for a family or small group Feeding downloads automatically into a Calibre-Web-Automated or Audiobookshelf ingest folder Consolidating several book and audiobook sources behind one search interface
How do I install shelfmark?
Download the docker-compose file: curl -O https://raw.githubusercontent.com/calibrain/shelfmark/main/compose/docker-compose.yml Start the service: docker compose up -d Open the web interface at http://localhost:8084 and configure your sources
Where can I get shelfmark?
The source code and installation instructions are on GitHub: https://github.com/calibrain/shelfmark

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects