Bookshelf is a newly released self-hosted application designed for managing personal eBook collections. It provides a single server-rendered page to list, filter, and serve EPUB and PDF files. The application includes built-in readers for both formats, allowing users to read books directly in their browser.
Users can deploy Bookshelf in two main ways: as a Node server operating over a directory on disk, or as a Cloudflare Worker utilizing Cloudflare R2 object storage. This dual deployment capability offers flexibility depending on user preferences for local hosting versus cloud-based solutions.
To run Bookshelf, a Unix-like system and Node.js version 24 or newer are required. The sync tool, which handles cover generation, relies on image tools like `cwebp` and `pdftoppm`, making Windows unsupported for direct installation. Docker is an alternative for setup, as it ships with these necessary tools. The application stores published books, user profiles, and reading positions in a single named volume for easy backup.
Bookshelf can be configured via a `bookshelf.config.json` file to point to a specific directory for local storage. For Cloudflare R2 deployment, users need a Cloudflare account and must configure the application to interact with their R2 bucket. The system is designed to operate without requiring external accounts beyond the chosen storage provider.
✨ This summary was generated by AI from the outlets' reporting listed below. It is not independently verified and may contain errors — check the original sources. How BrevFeed works →
One email each morning: the day's tech stories, clustered across outlets and summarized. No account needed.
One email a day. Unsubscribe in one click, any time.
Spend a few minutes, get the whole day. Every topic's top stories in one hands-free rundown — listen, watch, or read the transcript.
▶ Play today's briefNew every morning, and the back catalogue is archived by date.
Bookshelf is a new self-hosted eBook library application that allows users to manage and read their EPUB and PDF files. It can run as a Node server on a local directory or as a Cloudflare Worker over R2, providing flexibility for deployment.