The fundamental goal of the Readium project is to produce a robust, performant, spec-compliant EPUB reading system that can be deployed in browsers, embedded into browser apps like the Google Chrome extension or simply embedded as an SDK into native applications.
The project’s primary focus is two-fold:
Provide functional out-of-the-box EPUB reading systems for use on the web. Currently, there are two, a cross-browser solution for embedding in users’ websites, named the Readium CloudReader, and the Readium Chrome Extension, which is available for download from the Google Chrome Store.
A cross-platform native-code software development kit (SDK) that can be used to build native applications across a variety of hardware platforms.
Readium is available for both open source and proprietary applications. For open-source, non-commercial applications, all the Readium code is available under a BSD-style license. For commercial applications, the Readium SDK code is licensed under Gnu Affero General Public License Version 3 to help ensure the level of development and management support necessary for its ongoing development.
Readium strives to create a courteous, welcoming environment that feels approachable to newcomers. We maintain both public chat rooms (via Slack) and a public mailing list where the ideas of contributors both new and old are heard and discussed with equal weight. For more information see the Communication page here.
Readium aims for compliance with the latest EPUB specification, and to be a testbed for support of emerging EPUB modules. EPUB Publications are expected to have longevity and to be interoperable across multiple, indirect distribution channels, and reliably manipulated by intermediate workflows. Being a comprehensive reference system, Readium places a high priority on compatibility with the EPUB 3 specifications.
The Readium Project also provides feedback to the IDPF EPUB standards community as well as to the broader W3C and web standards community, introducing new technologies and making sure new standards can be implemented in our engine. We use regression testing to maintain our standards compliance.
We strive for compatibility with real-world commercial EPUB Reading Systems, but not at the expense of standards compliance. In particular we seek to be a reference system that promotes digital publications for the Open Web, and does not depend on, or proliferate proprietary technologies. We discourage “embrace and extend” tactics that aim to create closed silos, by the positive step of showcasing and delivering leading-edge functionality that is fully specified, free and open, and interoperable.
The main Readium code base strives to always maintain a high degree of stability. This means that crashes, hangs and regressions are given the highest priority for fixes and releases. Readium uses a careful release process and closely tracks reported issues from both internal testing and external forums.
Maintaining and improving speed and memory use is an important goal, however being a complete reference system for EPUB is more important than speed or memory efficiency. We never consider performance good enough, but strive to constantly improve.
Protecting users from security violations is critical. We fix security issues promptly to protect users and maintain their trust.
The Readium project addresses a variety of needs, from desktop and mobile browsers to native applications on the desktop and mobile devices. We strive to enable porting or deploying Readium to a wide variety of desktop, mobile, embedded and other platforms.
To the extent that Readium features affect the user experience, we want them to work in accordance with good human interface design principles, and to mesh well with platform-native HI conventions. Furthermore, we strive to integrate with platform accessibility features to allow access for all users, including those with disabilities.
While IDPF is the sponsoring organization for Readium Project, governance of the project is by a seven-person board of directors rather than the policies and procedures IDPF utilizes for standards-development working groups. In addition, the board takes direction from the members of the Readium Foundation as well as the grass-roots needs and requests from the contributors (who need not be members of the Foundation).
The above goals are a lot to bite off, so we consider the following out of scope for the project.
Readium is a reference system and engine, not a commercial Reading System.
We do not plan to develop or host a full-featured commercial-quality application based on Readium. Others are welcome to do so, of course.
Readium is an engineering project not a science project.
For new features to be adopted into Readium, we strongly prefer the technology, or at least the use case for it, to be proven. Since Readium has been created to promote EPUB format support under the sponsorship of IDPF, we will in general give the benefit of the doubt that features standardized for EPUB by IDPF meet this bar. Support for non-standard extensions to EPUB will be discouraged unless widely supported in real world content.
Readium is not the solution to every problem.
We focus on handling EPUB publications, not complete solutions to every imaginable technology need.