Goals of Readium Web
Readium Web is an open-source Web reading toolkit (not a full featured Web app), with an emphasis on speed, modularization and clarity of the code.
A Web app based on Readium Web does not process an EPUB file, but a Readium Web Publication. A Web Publication can be fetched from a simple http server exposing static files, but it is usually using the power of a publication server, a.k.a streamer (see Readium Architecture) .
Readium Web is compatible with different Web browsers (at least Google Chrome, Mozilla Firefox, MS Edge, Apple Safari) and will integrate several navigators, each one being adapted to the type of publication the app needs to process (e.g. reflowable ebooks, fixed layout ebooks, audiobooks, comics). Resources (i.e. (X)HTML5, images, MP3 streams) are retrieved at the time they are used, with a some level of preload and cache.
The ts-toolkit which contains the project is in place here.
As of Q4 2022, the project is still in its early days and only a basic reflowable content navigator is available. The content is expected to be (X)HTML5 content.
A Web reader based on this project is already in production at De Marque. The project is still young, currently supported by a single Readium Foundation member, therefore do not expect much from the community yet.
If you are willing to integrate a more mature Web reading toolkit in the short term, please check r2d2bc from DITA.
The server part of a complete system – the publication server – is not part of the Readium Web project. You can build such a server from either the Readium go-toolkit or the Readium r2-streamer-js. In both cases there is no packaged product for creating a publication server; you development team will have to be innovative.
Important: Readium Web does not and will not support the LCP DRM. Browsers are transparent to developers, and no trustful Digital rights Management technology can survive such exposure. The Readium community may work in the future on a protection applicable to Web Publications.
Prototypes of the future codebase are already available at different locations:
- Webpub-viewer proof of concept has been developed by Hadrien Gardeur (Feedbooks); sources are here and are released under a MIT license.
- Webpub-viewer prototype has been developed by Amy Slagle (NYPL) from the proof of concept; sources are here.
- Webpub-viewer has been developed by Jiminy Panoz (Jellybooks) from the prototype and released on the EDRLab Github; sources are here and are released under a BSD-type license.
- R2D2BC has been developed by Aferdita Muriqi (DITA) as a CAST project, from Webpub-viewer; sources are here and are released under a BSD-type license.
- Jellybooks Reader has been developed by Jiminy Panoz (Jellybooks) and builds on previous works. Its engine will be released as a first version of the official Readium Web open-source codebase.
Note: this shows the power of a community like Readium, moving from a POC to an end-user product by passing code from hand to hand.