Skip to content
Berth

Server 1.0 is out · app coming to stores

Berth — a self‑hosted audiobook server for you and your family

Berth is an open-source audiobook server you run on your own VPS, NAS or in Docker. Upload books through a web admin, keep them on a local disk, any S3-compatible storage or Google Drive, and listen in the Berth app for Android and iOS — with progress that is never lost.

Star or watch the repository to hear when the app reaches the stores.

App design mockup

Problem

Why audiobooks get lost on home servers

  • Folder scanners guess your library

    Most self-hosted servers rebuild the library by scanning folders. One stray file can merge a series, and moving files to a NAS can wipe listening progress.

  • The position jumps back

    Pausing from the lock screen or Bluetooth, or opening the app before sync finishes, can reset the playback position — the most common complaint about audiobook apps.

  • Offline downloads stall

    Downloads hang, never turn into a playable book, or play tracks in the wrong order.

Berth is designed so these problems have nowhere to happen: the database is the source of truth, and the phone keeps its own position.

How it works

A server you host, storage you choose, an app on every phone

Berth has three parts. The server keeps the library in its database; the audio lives in the storage you pick; the app plays it and remembers where you stopped.

  1. Run the server

    One server with a built-in web admin. Install it on a VPS, a NAS or in Docker and finish setup in a short web wizard.

  2. Upload books

    Drag files or whole folders into the web admin — m4b with chapters or folders of mp3. Edit metadata before saving. Folder layout doesn't matter.

  3. Connect phones by QR

    Create a listener in the admin and show a QR code. The phone scans it — or types the code — and the library appears. Listeners have no passwords.

How audio travels in Berth

Berth server

web admin · database

library, progress

Berth app

Android · iOS

short-lived signed links

Your storage

local · S3 · R2 · Google Drive

CDN

optional

With S3-compatible storage, audio streams straight from the storage or a CDN over short-lived signed links, so the server is not a bottleneck. Local disk and Google Drive stream through the server.

Features

Everything a family audiobook library needs

Storage

  • Local disk
  • Any S3: AWS, Cloudflare R2, Backblaze B2, MinIO, Yandex Object Storage and others
  • Cloudflare R2 and Google Drive connect through a wizard — no manual key juggling
  • Optional Cloudflare CDN in front of R2
  • Import a Google Drive folder as books

Player app for Android and iOS

  • Background playback, lock screen and notification controls
  • Bluetooth buttons, Android Auto and CarPlay
  • Sleep timer: minutes, end of chapter, fade-out, shake to extend
  • Playback speed remembered per book
  • Rewinds a few seconds when you resume after a pause
  • Chapters and 30-second skips

Progress and offline

  • Position saved on the phone every few seconds — survives the app being closed
  • Syncs across devices over plain HTTP
  • A server position replaces the local one only if it is newer
  • Offline downloads are checksum-verified, resumable and in the right order

Family and admin

  • Phones connect with a QR code — no listener passwords
  • Age ratings for books, 0+ to 18+, with filters
  • Home (LAN) and remote (WAN) addresses with automatic switching
  • Database backup from the admin, plus an automatic backup before updates
  • Open server (Apache-2.0) with an OpenAPI-described API

Compare

Berth compared with Audiobookshelf, Plex and Jellyfin

All four can serve audiobooks from your own server. The difference is in how the library is built, where files can live and how phones connect.

Berth compared with Audiobookshelf, Plex and Jellyfin
AspectBerthAudiobookshelfPlexJellyfin
FocusAudiobooksAudiobooks and podcastsGeneral media serverGeneral media server
Library sourceDatabase; books uploaded via web adminScans media foldersScans media foldersScans media folders
Where files liveLocal disk, any S3, Google DriveLocal or mounted file systemLocal or mounted file systemLocal or mounted file system
Audio deliveryFrom storage or CDN via signed links, or via the serverThrough the serverThrough the serverThrough the server
Listener sign-inQR code, no passwordUsername and passwordPlex accountUsername and password or Quick Connect
Mobile appsOwn Android and iOS app (not in stores yet)Official Android app; iOS app in TestFlight betaPlex apps and third-party audiobook playersThird-party audiobook players
Server licenseApache-2.0GPL-3.0ProprietaryGPL-2.0
MaturityServer 1.0 (October 2026), app in developmentMature, large communityMature, commercialMature, large community

Based on public documentation and issue trackers as of October 2026. Audiobookshelf, Plex and Jellyfin are mature, widely used projects; Berth reached its first server release in October 2026, and its app is not in stores yet.

FAQ

Frequently asked questions

What is Berth?

Berth is a self-hosted audiobook server with its own mobile app. You run the server on your own hardware, upload books through a web admin, choose where the files are stored, and family members listen on Android or iOS.

Can I install Berth today?

The server, yes: version 1.0 runs in Docker on a Linux server, a NAS or a Raspberry Pi (amd64 and arm64). The mobile app is not in the stores yet — star or watch the GitHub repository to hear when it is.

Is Berth open source?

The Berth server is open source under the Apache-2.0 license, with a public repository on GitHub. Its API is described with OpenAPI, so third-party clients are possible; the official mobile app is a separate, closed-source project.

How is Berth different from Audiobookshelf?

Berth keeps the library in a database instead of rebuilding it from folder scans, so file layout, stray files or moving storage cannot break books or progress. It can also keep audio in S3-compatible storage or Google Drive, not only on a local disk. Audiobookshelf is mature, supports podcasts and has a large community; Berth is new and focused on audiobooks.

Which storage does Berth support?

Local disk, any S3-compatible storage (AWS S3, Cloudflare R2, Backblaze B2, MinIO, Yandex Object Storage, Wasabi, Hetzner and others) and Google Drive. Cloudflare R2 and Google Drive connect through a guided wizard.

Can I keep audiobooks in Google Drive?

Yes. Berth connects to Google Drive with the minimal drive.file permission, so it only sees the files it created. Audio from Drive streams and downloads through your Berth server.

Does listening progress sync between devices?

Yes. The app saves the position of every book on the phone every few seconds and syncs it to the server; a server position replaces the local one only if it is newer. Downloaded books play offline.

Does Berth work with Android Auto and CarPlay?

Yes, both are part of the first version: browse Continue listening, the library and downloads, and control playback from the car.

How do family members connect?

The admin shows a QR code in the web panel; the phone scans it or enters the short code (like BRTH-7K2Q) and is connected. Listeners don't need passwords, and the admin can revoke any device.

Which audio formats does Berth support?

The first version handles m4b audiobooks with embedded chapters and folders of mp3 files. Chapters and track order are stored in the database, not inferred from file names.

Can I migrate from Audiobookshelf?

Not in the first version. Books are added by uploading through the web admin or by importing a Google Drive folder; an Audiobookshelf importer is considered for after the first release.

Status

Status and roadmap

The server 1.0 is out; the app is being finished. There is no store release date yet — follow the repository for updates.

First version (in progress)

  • Server with web admin and setup wizard
  • Upload via web: m4b with chapters, folders of mp3
  • Storage: local, S3, Cloudflare R2 wizard, Google Drive
  • Android and iOS app, connected by QR
  • Background playback, lock screen, Bluetooth
  • Android Auto and CarPlay
  • Sleep timer, per-book speed, rewind after pause
  • Progress sync and offline downloads
  • Age ratings and filters
  • Database backups

After the first version

  • Desktop app
  • Tablet layouts
  • Podcasts
  • Import from Audiobookshelf
  • Kids' profiles and access rules
  • Bookmarks with notes and listening stats

Install

Installation

Berth runs in Docker on a Linux server, a NAS or a Raspberry Pi. These commands start it on port 8080; updates, backups and HTTPS are covered in the README on GitHub.

bashamd64 · arm64
$ mkdir berth && cd berth
$ curl -fsSLO https://raw.githubusercontent.com/joveptesg/berth/main/docker-compose.yml
$ docker compose up -d
$ docker compose logs berth
# then open the server address and enter the setup code from the log