A modern, local-first library manager for your messy file folders.
3.4K
Shelfie is a fast, self-hosted web application for managing your personal library of PDFs and EPUBs. Designed with simplicity in mind, Shelfie automatically watches your book folder for new files, generates covers, and provides a clean, responsive web interface to browse and search your collection.

The stable releases of shelfie are distributed on PyPI and can be easily installed or upgraded using pip:
pip install shelfie-py
shelfie
git clone https://github.com/mhmdsamer-dev/shelfie.git
cd shelfie/
docker build -t shelfie .
BOOKS_DIR=REPLACE/YOUR/BOOK/PATH docker compose up -d
Pulling image from Docker Hub:
docker run -d -p 8000:8000 -e LIBRARY_PATH=/books -v shelfie_data:/data -v "D:\Your\Books\Folder":/books:ro mhmdsamerdev/shelfie
shelfie [--host HOST] [--port PORT] [--reload] [--log-level LEVEL]
--host Bind address (default: 127.0.0.1)
--port Port number (default: 8000)
--reload Auto-reload on code changes (development)
--log-level debug | info | warning | error (default: info)
On startup, Shelfie checks PyPI for a newer shelfie-py release and prints an upgrade hint:
pip install --upgrade shelfie-pydocker pull mhmdsamerdev/shelfieDisable this check by setting SHELFIE_DISABLE_UPDATE_CHECK=1.
All user data is stored under SHELFIE_DATA_DIR (default ~/.shelfie)
Please open an issue first to discuss what you would like to change.
Content type
Image
Digest
sha256:fd5a3b0c0…
Size
192.9 MB
Last updated
5 months ago
docker pull mhmdsamerdev/shelfie