Software

Thorium Reader
Thorium Reader is a free reading application that is multilingual, multiplatform, and multiformat. It is developed by a team of expert EDRLab software developers, and its source code is open-source.
Thorium Desktop is the most advanced variant, with over 1.5 million downloads. It is available on Windows, macOS, and Linux, supports EPUB 2 and 3, PDF, Web Publications, and DAISY publications. It handles the LCP DRM.
Thorium Web has reached its first production milestone. This open-source Web reader, based on Readium Web, can be hosted on any bookselling or library platform. It supports Web Publications, which can be generated on the fly from EPUB publications. A protection technology called WCP (for Web Content Protection) will soon be available on Thorium Web.
Thorium Mobile is under development on iOS, and is based on Readium Mobile. It currently supports EPUB and handles LCP. A private beta is currently open to select partners, followed by a public beta in early 2026. The development of an Android version is expected to start in 2026.
Readium Toolkits and the Readium project
The main goal of this project is to create a modular open-source codebase, with a clean software architecture and documentation, which allows the easy development of reading applications on three types of platforms: mobile, desktop and Web. Different implementations can therefore share the same architecture, model, interfaces; a developer should therefore be able to switch from one implementation to another without feeling lost.
These toolkits enable the processing and display of multiple kinds of publication, including EPUB 2 and EPUB 3, PDF, audiobooks and Divina visual narratives (comics / manga / bandes dessinées).
The different software modules composing these toolkits are intended to be, insofar as possible, independent of each other and can be used outside of the overall architecture. At the same time, these modules are designed so that they CAN be easily and seamlessly combined to produce complete reading systems.
For rendering content, these toolkits leverage the capabilities of modern browser engines and supplement those capabilities with modules (polyfills, if you will) that provide additional functionalities.
A specific aspect of the mobile toolkits is that instead of a “platform-neutral” C++ core, the codebase is implemented in native code, i.e. Swift for the iOS target and Kotlin for the Android target. This enables the use of the most powerful aspects of each native environment and ends up with a small and efficient codebase. The Swift and Kotlin toolkits can nevertheless be integrated in applications based on cross-platform frameworks like Flutter and ReactNative.
On the other side, desktop applications (on Windows, OSX and Linux) are approached using cross-platform technologies, i.e. Electron.js, node.js, Typescript.
The Readium project is therefore split in different parts:
Readium Architecture, a software architecture common to the different implementations.
More about the Readium Architecture
Readium Mobile, a toolkit for iOS and Android reading apps, with Readium LCP support.
Readium Web, a toolkit for Web apps.
Readium CSS, a reading system stylesheet common to Readium Mobile, Desktop and Web.
Readium LCP, a modern protection technology for ebooks.
Project documentation
The project documentation is active on the Readium Architecture Github repository, as Github issues and Slack exchanges.
Please also look at the Readium Architecture wiki page if you want to participate to the project.
Communication about software development
Assises du Livre Numérique 2021 – Evolutions en cours sur les applications de lecture.
Readium-2
The major evolution of the Readium SDK codebase, the objectives being better performances and stability, clarity of source code and documentation.
Readium SDK & JS
The reference EPUB 3 open-source reading engine for Web, desktop and mobile apps, on active maintenance by the Readium community.
Readium LCP
The vendor-neutral and interoperableDigital Rights Management technology, embeddable in any reading application based on the Readium SDK.