Skip to content
Luc Garrabos edited this page May 6, 2026 · 2 revisions

BookStorage

BookStorage is a self-hosted web application for tracking your reading progress across novels, manga, webtoons, light novels, and more.

Go SQLite License


Overview

BookStorage gives readers a single place to catalogue what they read and follow progress over time (planned, reading, completed, dropped). You can attach ratings and notes, explore statistics on your reading habits, and discover what others have shared through community libraries — all without giving up control of your data.

The interface is built for everyday use: responsive layout, dark mode, English and French UI, optional PWA install, and keyboard shortcuts for power users. Everything runs on your machine or server with a SQLite database (or PostgreSQL), and export/import keeps your data portable.


Features

  • Multi-format library — novels, manga, webtoons, light novels, manhwa, manhua, and more
  • Progress tracking — chapter counter with quick increment/decrement, status management (reading, completed, on hold, dropped, plan to read)
  • Ratings and notes — rate and annotate every work in your library
  • Statistics — visual breakdown of your reading habits
  • Community libraries — browse public libraries from other users and import works
  • Dark mode — full dark theme support
  • Multilingual — English, French, German, Spanish, Italian, Portuguese
  • PWA — installable as a mobile app with a simplified dashboard, search, filters, and auto-refresh
  • Export / Import — CSV and JSON formats, plus MyAnimeList and AniList import support
  • Keyboard shortcuts — quick access to common actions on desktop
  • AniList recommendations — personalized suggestions based on your library
  • Reading sites — link works to reading platforms with periodic availability probes
  • Catalog integration — search and link works to AniList/MangaDex catalog entries
  • Admin panel — account management, database tools, catalog enrichment, monitoring
  • Prometheus metrics — built-in /metrics endpoint for observability
  • Google OAuth — optional Sign in with Google

Quick start

Requirements: Go 1.22+, GCC (CGO for SQLite).

git clone https://github.com/LGARRABOS/BookStorage.git
cd BookStorage
go run ./cmd/bookstorage

Open http://127.0.0.1:5000 in your browser.


Wiki contents

Page Description
Installation Development and production setup
Configuration Environment variables, site config, OAuth, PostgreSQL
Usage Dashboard, mobile PWA, export/import, keyboard shortcuts
API Reference REST API endpoints reference
Architecture Tech stack, project structure, diagrams
Database Schema, tables, migrations, full-text search
Authentication and Security Auth flows, sessions, roles, HTTP hardening
CI / CD Continuous integration, deployment, bsctl CLI
Troubleshooting Common issues and solutions

Supported Linux distributions

Distribution Status
AlmaLinux First-class support
Alpine Linux Works (manual install)
Amazon Linux 2023 First-class support
Arch Linux Works (manual install)
CentOS Stream First-class support
Clear Linux Works (manual install)
Debian First-class support
Deepin First-class support
elementary OS First-class support
EndeavourOS Works (manual install)
Fedora First-class support
Fedora Silverblue Works (manual install)
Garuda Linux Works (manual install)
Gentoo Works (manual install)
Kali Linux First-class support
Linux Mint First-class support
Manjaro Works (manual install)
MX Linux First-class support
NixOS Works (manual install)
Nobara First-class support
openSUSE Leap Works (manual install)
openSUSE Tumbleweed Works (manual install)
Parrot OS First-class support
Pop!_OS First-class support
Raspberry Pi OS First-class support
RHEL First-class support
Rocky Linux First-class support
Slackware Works (manual install)
Solus Works (manual install)
Ubuntu First-class support
Void Linux Works (manual install)
Zorin OS First-class support

First-class support means the install.sh script and systemd integration are tested. Works (manual install) means the app compiles and runs but may require manual steps.


License

MIT License


Installation — Next: get BookStorage running on your machine.

Clone this wiki locally