Welcome to books

Welcome to the documentation for books, a lightweight web frontend for calibre book libraries.

Quickstart

The easiest way to run books is by using the docker (arm, arm64, amd64) container I'm hosting on ghcr.io. You'll need a Calibre library at /path/to/your/claibre/library:

docker pull ghcr.io/ilikeorangutans/books:latest
docker run -p 9090:9090 \
    -v /path/to/your/calibre/library:/library:ro \
    ghcr.io/ilikeorangutans/books:latest

Now open localhost:9090. If you can't see any books check the logs for any errors.

Features

  • access your calibre library over the web
  • browse books, filter by title
  • read epubs directly in your browser, download all formats for local consumption
  • dark mode support
  • lightweight frontend written in Elm
  • low server resource footprint, ideal for raspberry pi
  • small docker image: ~23 MiB
  • OPDS support

Missing Features and Wishlist

Things books doesn't do. It might some day, but right now, it doesn't.

  • books does not have any authentication options. I run it behind a reverse proxy with basic authentication.
  • Customization options, tied to user authentication: reading list, mark as read, etc.
  • Better mobile experience. Right now it kinda works, but it's not great.
  • Better search, ideally full-text search.
  • Reading positions/highlights sync. I use MoonReader and it has support for synching reading positions, would be nice to integrate this.
  • Better OPDS support, e.g. with pagination.