Your library,
your server.
HomeBranch is a self-hosted EPUB library with a beautiful in-browser reader, cross-device reading position sync, bookshelves, and multi-user support. No subscriptions. No cloud. Full control.
EPUB
In-browser reader
Multi-user
Roles & permissions
Docker
One-command deploy
Everything your library needs
Built for readers who want their own space. HomeBranch combines a full-featured reading app with the freedom of self-hosting.
EPUB Reader
Read your books directly in the browser with a clean, distraction-free reading experience. No external apps required.
Cross-Device Sync
Your reading position is synced across all devices. Pick up right where you left off, whether on desktop, tablet, or mobile.
Bookshelves
Organize your library into custom bookshelves. Group books by genre, series, topic, or anything you like.
Favorites & Currently Reading
Keep track of your reading journey. Mark favorites, track what you're currently reading, and build your to-read list.
Multi-User Support
Full user management with roles and permissions. Give family members or housemates their own library accounts.
Self-Hosted & Private
Your books live on your own server. No cloud accounts, no subscriptions, no tracking. Complete control over your data.
Easy Book Upload
Add EPUB files up to 50 MB directly from your browser. The API handles storage and makes your books instantly available.
Dark & Light Mode
Comfortable reading in any environment. Toggle between dark and light themes, and your preference is remembered across visits.
Three services, one library
HomeBranch is composed of three focused services that work together. Each can be deployed independently with Docker.
Authentication
NestJSHandles user accounts, JWT access and refresh tokens, and session management. Runs as a standalone service so authentication logic is fully separated.
HomeBranch API
CoreThe backend API built with NestJS and PostgreSQL. Manages books, bookshelves, authors, favorites, currently reading lists, and reading position sync.
Web Frontend
ReactA React SPA served by nginx. Browse and manage your library, read EPUBs in the browser, and sync your position across devices. nginx proxies API calls at runtime.
What's coming to HomeBranch
The web app is just the beginning. Native applications for Windows, Android, and iOS are in active development using Flutter.
Native Apps - In Development
Built with Flutter · Windows · Android · iOS
A native Flutter application is in active development, bringing HomeBranch to your phone and desktop with a fully native experience. One codebase, three platforms - all connecting to your self-hosted server.
Windows
Fluent UI design
Android
Material 3 design
iOS
Cupertino design
Already shipped
- EPUB in-browser reader
- Cross-device reading position sync
- Bookshelves & collections
- Favorites & Currently Reading
- Book upload (EPUB, up to 50 MB)
- Multi-user support with roles
- Dark & light mode
- Docker & .deb deployment
Planned features
-
Reading statistics
Track pages read per day, reading streaks, time spent, and books finished over time.
-
Highlights & annotations
Highlight passages and add notes while reading. Sync annotations across all devices and apps.
-
Reading goals
Set daily or yearly reading goals and track your progress.
Up in minutes
Deploy the entire HomeBranch stack with a single Docker Compose file. Three services, one database, one command. The full guide covers secrets, first-login setup, and alternative deployment methods.
- Docker Compose full-stack setup
- Debian / Ubuntu .deb packages
- Build from source
- Nginx proxy configuration
services:
auth:
image: ghcr.io/oghamark/authentication:latest
environment:
DATABASE_HOST: db
JWT_ACCESS_SECRET: your-secret
JWT_REFRESH_SECRET: your-refresh-secret
homebranch:
image: ghcr.io/oghamark/homebranch:latest
environment:
DATABASE_HOST: db
JWT_ACCESS_SECRET: your-secret
homebranch-web:
image: ghcr.io/oghamark/homebranch-web:latest
ports:
- "80:80"
environment:
API_BACKEND: http://homebranch:3000
AUTH_BACKEND: http://auth:3000 See it in action
Browse your library, read in the browser, and sync your progress everywhere.
Library view
EPUB reader
HomeBranch is a free, open source ebook library server you run on your own hardware. If you are looking for a self-hosted Calibre alternative or a personal e-book server with a modern web interface, HomeBranch lets you manage and read your EPUB collection from any browser. It is a privacy-first ebook management solution built for readers who want full control over their digital library.
Ready to build your library?
Self-host HomeBranch in minutes. Open source and free forever.