web EPUB reader using EPUB.js, Bootstrap, and Calibre.

Andrew Dolgov 93cebbf740 update epub.js and localforage 3 years ago
css 05e155454d margins: normalize relative sizes somewhat; add special query for small and larger tablet devices 3 years ago
db 05b286c2b5 add db/ 3 years ago
img 86d02c4cba update hires favicon 3 years ago
js 36545b1372 hotkey_handler: prevent default handling of page changing events 3 years ago
lib 93cebbf740 update epub.js and localforage 3 years ago
.gitignore 16151f97d5 update .gitignore 3 years ago
COPYING 1acf84942d add COPYING 3 years ago
README.md dd7be32a98 Update README.md 3 years ago
backend.php 4eb861026b add book description tooltips using qtip2 3 years ago
config.php-dist bcf8165809 support dictd lookups on word selection 3 years ago
index.php 0bc8f464fd fix previous to not break search 3 years ago
manifest.json f37c9975ee add hires favicon, add support for run-as-app on chrome 3 years ago
offline.html 3cfa1d1cae add dropdown menu item to show book summary 3 years ago
read.html ee1f006d6f on load only open stored CFI when it actually exists 3 years ago
schema.sql bc6e20d282 use sqlite as a scratch db 3 years ago
worker.js 36075d3f6a popup dictionary window on touch events 3 years ago


The Epube

web EPUB reader using EPUB.js, Bootstrap, and Calibre.

  • responsive design
  • relies on HTTP Authentication provided by httpd
  • has transparent offline mode via service workers
  • can optionally store files locally for later reading
  • supports word definition lookups using dictd
  • supports Chrome homescreen "app mode"


  1. Initialize scratch.db

    sqlite3 db/scratch.db < schema.sql
  2. Ensure both scratch.db and its containing folder (i.e. db/) are writable by the application, normally this means chown-ing them as www-data or whatever user your httpd is running under.

    chown www-data db/ db/sratch.db
  3. Copy config.php-dist to config.php and edit path to Calibre, etc.

  4. Setup HTTP Basic authentication for epube directories. This is required, even if you're the only user.


  • php-sqlite
  • Calibre books directory and metadata.db


  1. Hires favicon by Flaticon - https://www.shareicon.net/business-school-material-open-book-education-leisure-reader-reading-794233
  2. Normal favicon from Silk icon pack - http://www.famfamfam.com/lab/icons/silk/


GNU GPL version 3.