A beautiful, modern ebook library manager with built-in readers, PDF tools, and support for 7+ formats.
Features β’ Demo β’ Installation β’ Usage β’ Screenshots
|
|
|
|
π Live Demo β
Note: The demo runs entirely in your browser. Add some ebooks to try it out!
git clone https://github.com/Programming2055/Booky.git
cd Booky
npm install
npm startWindows Users: Double-click start.bat to launch!
- Click the + Add Book button in the header
- Select your ebook files (PDF, EPUB, MOBI, etc.)
- Books are automatically added with cover extraction
- Click any book cover to open in the built-in reader
- Use arrow keys or click edges to navigate pages
- Press Escape to close the reader
- Click + New Collection in the sidebar
- Drag and drop books into collections
- Right-click collections to rename or delete
- Open any PDF in the reader
- Click the π§ Tools button in the toolbar
- Select a tool (requires Stirling-PDF)
| Shortcut | Action |
|---|---|
β / β |
Previous / Next page |
Escape |
Close reader |
+ / - |
Zoom in / out |
Ctrl + F |
Search in book |
Note: PDF reader uses the standard Mozilla pdf.js viewer which has its own toolbar and keyboard shortcuts.
| Format | Built-in Reader | System App | Notes |
|---|---|---|---|
| β | β | Mozilla pdf.js viewer with full toolbar | |
| EPUB | β | - | Reflowable text, TOC support |
| MOBI | β | - | Kindle format |
| FB2 | β | - | Fiction Book format |
| CBZ | β | - | Comic book archive |
| AZW3 | β | - | Amazon Kindle |
| DJVU | β | β | Vertical scroll, fit-width/fit-page zoom |
Booky integrates with Stirling-PDF for advanced PDF operations.
docker run -d -p 8080:8080 --name stirling-pdf frooodle/s-pdf:latestservices:
stirling-pdf:
image: frooodle/s-pdf:latest
ports:
- "8080:8080"
restart: unless-stoppedOnce running, the π§ Tools button in the PDF reader will be active!
| Technology | Purpose |
|---|---|
| UI Framework | |
| Type Safety | |
| Build Tool | |
| Local Storage | |
| PDF Rendering | |
| EPUB/MOBI Reader | |
| Python Server |
booky/
βββ π public/
β βββ π foliate-js/ # EPUB/MOBI reader engine
β βββ π pdfjs/ # Mozilla pdf.js viewer (v4.10.38)
β βββ djvu.js # DJVU support
β βββ booky-icon.svg # App icon
βββ π server/
β βββ ebook_server.py # Python server for system apps
βββ π src/
β βββ π components/
β β βββ BookCard/ # Book cover cards
β β βββ BookGrid/ # Library grid view
β β βββ EbookReader/ # EPUB/MOBI/FB2 reader
β β βββ PdfReader/ # pdf.js viewer iframe wrapper
β β βββ PdfTools/ # Stirling-PDF integration
β β βββ CollectionTree/ # Sidebar collections
β β βββ ...
β βββ π context/ # React context (state)
β βββ π services/ # IndexedDB, API services
β βββ π types/ # TypeScript definitions
βββ package.json
βββ README.md
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Cloud sync support
- Book recommendations
- Reading statistics
- Annotation export
- More themes
This project is licensed under the MIT License - see the LICENSE file for details.
- Foliate-js - EPUB rendering engine
- PDF.js - Mozilla's PDF viewer
- Stirling-PDF - PDF tools
- DjVu.js - DJVU support
Made with β€οΈ for book lovers
β Star this repo if you find it useful!




