Goals of Readium Mobile
Readium Mobile is the sum of an iOS and an Android open-source reading toolkits. Both projects are led by EDRLab.
Readium Mobile iOS is written in Swift and Readium Mobile Android is written in Kotlin.
The modular codebase is split between different Github repositories:
In order to demonstrate the capabilities of each toolkit, EDRLab has also led the development of two “test apps”:
- R2 Reader iOS which can be installed on an iOS device from Testflight via a self-invite link.
- R2 Reader Android which can be installed on an Android device from the Google Play Store Test section via a self-invite link.
These apps, again, are developed for testing purpose by the potential users of the Readium Mobile toolkits, i.e. developers. However these are generic reading applications, with a file import mechanism and a proper management of OPDS feeds. They are also both LCP compliant and highlight reading app best practices, including the accessibility of mobile applications.
Such developments have been possible thanks to the financial involvement of the EDRLab founding members. Please help us pursue this development, fund EDRLab.
Both toolkits and test apps now support the following:
- import EPUB files and manage an EPUB bookshelf.
- read reflowable publications in paginated and scrollable mode.
- read fixed layout publications on one page, with pinch to zoom.
- navigate inside a table of contents
- read right-to-left publications (e.g. Arabic and Hebrew, without UI localization).
- read vertically written publications (e.g. Chinese, Japanese).
- modify user settings, incl. luminosity, font selection & size, letter/word/line spacing, hyphenation, sepia and night mode, number of columns.
- read FXL publications using 2 page spreads, in landscape mode.
- open LCP protected ebooks.
- import publications from OPDS feeds (OPDS 1 and 2, without authentication).
- manage bookmarks.
- manage EPUB page lists.
- import and read CBZ comics files.
- import and read Readium Web Publications from a URI.
- make test apps compatible with the OS screen reader, with a basic listening of content.
The Readium Mobile iOS toolkit also supports the following:
- support for position lists and position indicator in the publication.
- open LCP protected PDF.
The Readium Mobile Android toolkit also supports the following:
- import and read Readium Audiobooks.
- import and read DiViNa files (i.e. the EDRLab Digital Visual Narratives format).
- listen to EPUB publications using TTS.
- search in the publication.
- support for annotations.
- render popup footnotes.
The development on each platform follows the same progression and semantic versioning. The development being essentially agile, the features related to a major version are added in the course of minor version updates.
The aim of the next phase of development is to move the two implementations at the same level, feature wise. This will close the version 2 step of development.
Once achieved, a version 3 of the toolkits will be developed, with the following features:
- open LCP protected Audiobooks.
- open LCP protected DiViNa publications.
- open W3C Web Publications (and Audiobooks).
- manage Media Overlays.
- manage EPUB dictionaries.
- make the UI follow the OS color scheme (e.g. night mode).
- manage customizable UI “themes”.