Recommended for the full experience

NoBookEnds Sync

NoBookEnds Sync is a small server you run next to Audiobookshelf. It is optional, and we recommend it for the full NoBookEnds experience: word-by-word Listen & Read, podcast subscriptions in the app, and your ratings, highlights, notes and clips on every device. It runs on an NVIDIA GPU or on any CPU.

Word-by-word Listen & Read

The server listens to each audiobook once, writes down when every word is spoken, and matches that to the text of the EPUB. Phones then download the result and follow along.

  • Sentence and word highlighting that follows the narrator
  • Handles abridged editions, intros and credits: text that is not narrated is simply skipped
  • Each book is processed once and then served to everyone on your server who can open both the audiobook and the ebook

Podcast subscriptions

Subscribe to shows right in the app, not only the ones in your Audiobookshelf podcast libraries.

  • Episodes stream straight from the show's feed
  • Your progress is synced, so you can switch devices mid-episode

Your notes on every device

Ratings, highlights, notes and clips are kept on your server and synced to every device you sign in on.

  • Highlight on one device, find it on the next
  • Kept on your server, never on ours

Optional, but recommended

NoBookEnds works fully without it: Listen & Read follows along by chapter, and your ratings, highlights, notes and clips stay on the device (in iCloud on Apple devices). Books it has not processed yet keep working as before.

Everything stays on your server

Audio, ebooks, transcripts, timings and your notes stay on your machine. Nothing is sent to us, and there is no tracking. The server checks every reader with your own Audiobookshelf before it shares anything.

Works overnight

Your existing library is worked through between 1 and 6 in the morning (you can change the hours), so the server stays quiet during the day. A book someone opens in the app starts right away.

GPU or CPU

An NVIDIA graphics card makes alignment fast: a Quadro P2000 does a 9 hour book in about 30 minutes. No GPU? The CPU image runs on any x86-64 server, several times slower, which the overnight schedule is made for. Podcasts and your notes do not need a GPU at all.

Quick start

Create an Audiobookshelf user for it

In Audiobookshelf go to Settings, Users and add a user called nobookends-sync that can download but not upload, update or delete, with access to your libraries and to explicit content. Then in Settings, API Keys create a key that acts as that user.

Run the container

Docker Compose, with an NVIDIA GPU:

services:
  nobookends-sync:
    image: ghcr.io/dancue44/nobookends-sync:latest
    restart: unless-stopped
    ports: ["8000:8000"]
    environment:
      ABS_URL: http://audiobookshelf:80
      ABS_API_KEY: your-api-key
      TZ: America/Chicago
    volumes: ["./nobookends-sync:/data"]
    deploy:
      resources:
        reservations:
          devices: [{ driver: nvidia, count: all, capabilities: [gpu] }]

No NVIDIA GPU? Use the image ghcr.io/dancue44/nobookends-sync:cpu and leave out the deploy block.

Unraid: add the NoBookEnds Sync template (GPU or CPU version), fill in your Audiobookshelf address and the API key, and apply. The GPU version needs the Nvidia Driver plugin.

Give it a web address

Phones need to reach it away from home too. In your reverse proxy (Nginx Proxy Manager, Caddy, Traefik) add booksync.yourdomain.com pointing at port 8000, with HTTPS. Use that name and the app finds it on its own next to your Audiobookshelf address.

Open the app

Books are processed overnight, or right away when someone opens one. Once a book is ready, Listen & Read uses it automatically.

Using AllSeerr? AllSeerr can configure it for you in Settings > Services.

How long does it take?

Most of the work is listening to the audio once. Rough guide for the default model:

HardwareA 10 hour audiobook
NVIDIA Quadro P2000 or newer GPUabout 35 minutes (measured)
Fast desktop CPU (Ryzen 9, 8 to 16 threads)about 1.5 to 3.5 hours (measured on a busy server)
Typical 4 core CPUabout 3 to 7 hours (estimate)

A faster, slightly less accurate model is available for CPU installs and roughly halves those times.

Questions? See Support or email [email protected].