Home
Softono
homebranch-web

homebranch-web

Open source TypeScript
27
Stars
2
Forks
11
Issues
0
Watchers
1 week
Last Commit

About homebranch-web

A self-hosted e-book management platform

Platforms

Web Self-hosted

Languages

TypeScript
HomeBranch

Homebranch is a self-hosted web application for managing and reading your E-Book collection. It provides a user-friendly interface to organize, search, and read your ebooks across devices.

[!NOTE] The project is split into 3 repositories allowing you to choose the components you want to use:

  • Homebranch Web: The frontend web application built with React and TypeScript
  • Homebranch: The backend API built with NestJS and TypeScript
  • Authentication: A standalone authentication service built with NestJS and TypeScript, which can be used with Homebranch or as a general-purpose auth service for other applications

Preview

Library View Book Details View Authors View

Features

  • EPUB and PDF in-browser reading — Readium powers the EPUB reader, while PDF reading is built into the web app with shared position sync
  • Installable PWA with an offline-ready app shell for a more native-like experience
  • Library with infinite scroll and search
    • Keyword search: isbn:<value>, genre:<value>, series:<value>, author:<value> prefixes narrow results by metadata field
  • Book detail page with enriched metadata and format-aware actions: genres, series, ISBN, page count, publisher, language, ratings, format selection, and linked-format management
  • Automatic metadata enrichment from Open Library and Google Books on upload
  • Book shelves (collections)
  • Currently Reading and Favorites lists
  • Dark and light mode
  • User management and roles
  • EPUB and PDF upload (up to 50 MB)
  • SSO login via OIDC (configurable in the Settings page)
  • Library Management page (admin): paginated job history with status filtering, book ownership management, linked-format maintenance, and book deduplication
  • Real-time library updates via SSE — new, removed, or updated books reflect automatically without a manual page refresh; job progress streams live as jobs run

Installation

See our documentation for installation and configuration instructions.


Contributing

Contributions are welcome! Please see our contribution guidelines for details on how to get involved.


Credits