A self-hosted personal book tracker for logging what you've read, are reading, and want to read, as an alternative to Goodreads.
pickles4evaaaa/mybibliotheca
A self-hosted library manager and reading tracker for organizing books, logging reading sessions, and tracking progress.
Open-source alternative to:Goodreads
StoryGraph
- Stars
- 597
- Forks
- 42
- Open issues
- 13
- Last commit
- 5 days ago
What is it?
MyBibliotheca is a self-hosted web application for managing a personal book collection. It lets you catalog books and contributors, look up metadata by ISBN, fetch cover images, and set reading status, progress, ratings, and reviews for each title.
The app also records reading sessions and provides statistics on your reading habits. Books can be imported from Goodreads, StoryGraph, reading-history exports, and custom CSV files. It supports multiple user accounts with private reading data, along with admin tools, backups, restore, and data export.
Version 3.0.0 uses PostgreSQL as its primary database, and existing Kuzu installations can be migrated through an in-app wizard. Redis caching is optional.
Key features
- 01ISBN lookup with metadata and cover fetching
- 02Imports from Goodreads, StoryGraph, and CSV files
- 03Reading status, progress, sessions, and ratings
- 04Multiple user accounts with private reading data
- 05Backups, restore, and data export
- 06PostgreSQL storage with optional Redis cache
Use cases
- Keeping a private catalog of a home book collection on your own server
- Migrating reading history from Goodreads or StoryGraph into a self-hosted tracker
- Sharing a family or household library with separate reading records per user
Quick start
- 1
Follow the Docker Compose quick start in DOCKER.md
- 2
Read the official install guide for the 3.0.0 image tag
Things to know
- Version 3.0.0 uses PostgreSQL, so you need to run a PostgreSQL database.
- Existing Kuzu installations must be migrated with the in-app migration wizard before upgrading.
In collections
Topics
FAQ
- What is mybibliotheca?
- A self-hosted library manager and reading tracker for organizing books, logging reading sessions, and tracking progress. MyBibliotheca is a self-hosted web application for managing a personal book collection. It lets you catalog books and contributors, look up metadata by ISBN, fetch cover images, and set reading status, progress, ratings, and reviews for each title.
- Is mybibliotheca free to use? What license does it have?
- mybibliotheca is open source under the MIT license. Check the license terms before using it in commercial products.
- Is mybibliotheca still maintained?
- Actively maintained. The last commit to mybibliotheca was on Nov 2, 2026.
- What can I use mybibliotheca for?
- Keeping a private catalog of a home book collection on your own server Migrating reading history from Goodreads or StoryGraph into a self-hosted tracker Sharing a family or household library with separate reading records per user
- How do I install mybibliotheca?
- Follow the Docker Compose quick start in DOCKER.md Read the official install guide for the 3.0.0 image tag
- Where can I get mybibliotheca?
- The source code and installation instructions are on GitHub: https://github.com/pickles4evaaaa/mybibliotheca
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A self-hosted library and reading platform for ebooks, PDFs, audiobooks, and comics, with progress sync across web, iPhone, Kobo, and KOReader.
A self-hosted tracker for media consumption (books, shows, games) and fitness workouts, with data kept on your own server.
A self-hosted web app for tracking your personal book library, with reading status, ratings, notes and public sharing.
A self-hosted web app that indexes your tabletop RPG PDFs, maps, tokens, audio and models into one searchable library.
Lute is a Python/Flask app for learning foreign languages by reading texts you choose.