Software

Origins

The Readium project was initiated by the IDPF in 2012 in order to create an open-source implementation of an EPUB 3.0 parser and reading toolkit. Initially written in Javascript as a Google Chrome extension, it soon evolved with the addition of a C++based native SDK, for use in iOS, Android and desktop applications. A more complete description of the Readium project goals is found on the Readium website.

Open-source projects needed to be funded, and it was therefore decided to create the Readium Foundation as “an Open Source Foundation collaboratively developing technology to accelerate the adoption of EPUB 3 and the Open Web Platform by the Digital Publishing Industry”. Today the Readium Foundation has about 40 members worldwide.

Thanks to Readium member efforts, the Readium C++ SDK and the Readium JS toolkit became rock solid open-source projects, a reference implementation for EPUB 3 processing, one of the rare software supporting EPUB 3 media overlays, MathML, right to left reading progression etc.

Discover the Readium SDK and JS toolkit

Transition

As of 2016, Readium was a set of fully functional open-source EPUB 3 engines, with two pure JavaScript implementations (Readium Chrome Extension and CloudReader) as well as a C++ EPUB parser. iOS, android and OSX reading applications are built using this C++ core, a large Javascript library (“shared JS”) and native wrappers (in Objective-C and Java). However, this C++ code is not as platform-neutral as it was aimed to be: it is interspersed with directives targeting specific implementations. Also, given the organic nature of an open-source development with constant turnover of developers, this hybrid codebase has become large and complex, with nobody having complete knowledge of its nitty-gritty details.

The Readium SDK was at the time associated with a dual license, GNU and free for open-source projects, Apache and subject to yearly fees for commercial projects. This dual license was very useful for the maintenance of the codebase by senior developers, but was un-evently understood by implementers … was Readium really open-source?

Meanwhile, the web had continued to mature with JavaScript engines becoming much more full featured (indie and outside browsers), with extensive support for parsing markup, crypto, SVG, WebGL support and more. On the mobile side, new and modern languages have taken the sunlights, Swift on iOS, Kotlin on Android. On the desktop side, one can develop efficient multi-platform applications using the Typescript language and the Electron.js platform.

At the same time, W3C members from the publishing industry (including EDRLab) had started creating new specifications for Web Publications and EPUB4, which would support digital publishing in many forms, i.e. traditional ebooks, audiobooks and visual narratives.

This led several Readium members to conclude, late 2016, that it might well be time to step back from the current Readium codebase and approach and do some serious re-thinking. At the same time, the licensing model was changed  for a unique BSD-3 type license, free for any type of project, but with a strong suggestion to participate financially to the maintenance of the different projects by paid developers.

New projects – Readium-2

Whilst still helping on the maintenance of the original Readium C++ SDK and Readium JS, EDRLab is mainly now leading the development of the three most active Readium projects:

Readium Mobile, a toolkit for iOS and Android reading apps.

Readium Desktop, a toolkit for Windows, MacOS and Linux reading apps.

Readium LCP, the innovative DRM for ebooks.

Discover LCP

The Mobile and Desktop toolkits are built on a common architecture, that we call Readium Architecture or Readium-2.

Discover the Readium Architecture

Readium projects

Readium-2

The major evolution of the Readium SDK codebase, the objectives being better performances and stability, clarity of source code and documentation.

Discover Readium-2

Readium SDK & JS

The reference EPUB 3 open-source reading engine for Web, desktop and mobile apps, on active maintenance by the Readium community.

Discover Readium SDK & JS

woman in library reading at a tablet with lock in her hand

Readium LCP

The vendor-neutral and interoperableDigital Rights Management technology, embeddable in any reading application based on the Readium SDK.

Discover Readium LCP

Copyright © 2018 EDRLab. Legal informations

Log in with your credentials

Forgot your details?