EPUB Reader on your website.
You can publish EPUB books on the web with a parmalink for each book, and you can embed it in other webpages (just like a YouTube video).
- EPUB 3 and 2 compliant.
- Open source. (MIT license)
- Made with JavaScript. Works compatibly with all major web browsers on Mac/PC/smartphones:
- Safari
- Chrome, Opera, Vivaldi
- Firefox
- Microsoft Edge
- Internet Explorer 11 (except opening zipped EPUB archive)
-
How to setup & read/publish EPUB books (for users/publishers)
-
How to arrange development environment (for developers)
-
License
-
Special thanks
-
How to setup & read/publish EPUB books
BiB/i supports two ways to read/publish EPUB books:
- Read in browsers on your local machine, or
- Publish on the web, to have your books read by someone.
In either case,
- Download BiB/i from GitHub repositoly page's right sidebar or BiB/i web site,
- And unzip it at first.
- Open
bib/i/index.html
in your browser (except Internet Explorer), and - Drag an EPUB book and drop it into the window.
- That's all!
Demo.
You can publish both unzipped folder and zipped EPUB archive. But using unzipped folder is highly recommended.
This is recommended. It accelarates reading experience of your readers, and is more compatible with many browsers.
- Upload
bib
directory into some directory on your web server. - Unzip an EPUB book,
- Change the file extension from
.epub
to.zip
(BOOKNAME.epub
->BOOKNAME.zip
), and - Unzip the file with some tool.
- Change the file extension from
- Upload the unzipped folder
BOOKNAME
intobib/bookshelf
directory, and - Access to
http://your.web.site/somewhere/bib/i/?book=BOOKNAME
by your browser. (note that it has no extension) - Or embed code below into your blog entry or other webpages, and visit the entry.
<a href="http://your.web.site/somewhere/bib/i/?book=BOOKNAME" data-bibi="embed" data-bibi-style="[[ CSS for embeded BiB/i frame, as you like ]]">My Great Book Title</a><script src="http://your.web.site/bib/i.js"></script>
This is not recommended. It is slow and not compatible with Internet Explorer.
- Upload
bib
directory into some directory on your web server. - Upload your EPUB book (ex.
BOOKNAME.epub
) tobib/bookshelf
directory, and - Access to
http://your.web.site/somewhere/bib/i/?book=BOOKNAME.epub
by your browser. - Or embed code for it.
<a href="http://your.web.site/somewhere/bib/i/?book=BOOKNAME.epub" data-bibi="embed" data-bibi-style="[[ CSS for embeded BiB/i frame, as you like ]]">My Great Book Title</a><script src="http://your.web.site/bib/i.js"></script>
- How to arrange development environment
- Node.js + npm - guide: “Download the installer” (or “Installing Node.js via package manager”)
- Clone this repository.
$ cd <the local repository>
$ npm install
- installs modules in
npm-modules
andbower_components
directories.
- installs modules in
$ npm start
(or$ $(npm bin)/gulp
)- builds distribution files,
- launches a webserver and opens
http://localhost:3000/bib/i/?book=
in your browser, - watches/rebuilds changed files,
- reloads/syncronizes browser(s).
- Edit:
- SCSS source file(s) of:
bib/i/res/styles/bibi.css
are indev-bib/i/res/styles/
,bib/i.css
isdev-bib/i.scss
.
- JavaScript source file(s) of:
bib/i/res/scripts/bibi.js
are indev-bib/i/res/scripts/
(andbower_components/
).bib/i.js
isdev-bib/i.js
.- the extensions in
bib/i/extensions/
are indev-bib/i/extensions/
.
- SCSS source file(s) of:
- Following files are not processed by gulp tasks:
bib/i/index.html
bib/manifest.json
- Files in
bib/i/presets/
- Files in
bib/bookshelf/
- License
- Copyright © Satoru MATSUSHIMA - http://bibi.epub.link/ or https://github.com/satorumurmur/bibi
- Licensed under the MIT license. - http://www.opensource.org/licenses/mit-license.php
- The Elegant Icon Font ... Copyright © Elegant Themes, Inc. (Dual licensed under the GPL 2.0 and MIT license.)
- Font Awesome ... Copyright © Dave Gandy (Licensed under SIL Open Font License (OFL) 1.1)
- Material Icons ... Copyright © Material Design Authors / Google Inc. (Licensed under the Apache License Version 2.0)
- Native Promise Only ... Copyright © Kyle Simpson (Licensed under the MIT license.)
- Hammer.JS ... Copyright © Jorik Tangelder (Licensed under the MIT license.)
- easing.js ... Copyright © Dan Rogers (Licensed under the MIT license.)
- sML ... Copyright © Satoru MATSUSHIMA (Licensed under the MIT license.)
- JSZip ... Copyright © Stuart Knightley (Dual licensed under the MIT license or GPLv3.)
- base64.js ... Copyright © dankogai (Licensed under the MIT license.)
- Special thanks
- KITAITI Makoto ... @KitaitiMakoto
- Shunsuke ITO ... @shunito