Читалка на прокачку как Episteme Reader возвращает контроль над электронными книгами

10 May, 2026

Найти в Google Play нормальное приложение для чтения — тот еще квест. Либо интерфейс застрял в эпохе Android 4.4, либо на каждом шагу выскакивает реклама, либо приложение весит 100 мегабайт и требует доступ к контактам. На этом фоне проект Episteme Reader выглядит как глоток свежего воздуха для тех, кто ценит приватность и чистый код.

Episteme Reader Preview

Что это за зверь

Episteme Reader — это опенсорсная читалка для Android, написанная на Kotlin и Jetpack Compose. Автор явно делал ставку на концепцию offline-first. Приложение не пытается синхронизировать вашу библиотеку с непонятным облаком или собирать аналитику о том, сколько страниц вы прочитали перед сном. Оно просто открывает файлы и дает их с комфортом читать.

Интересно, что проект разделен на две части: OSS-версия на GitHub и расширенная версия в Google Play. Мы смотрим на открытый исходный код, который сам по себе является отличным примером современной Android-разработки.

Всеядный движок и поддержка форматов

Обычно читалки делятся на два лагеря: либо они хорошо работают с PDF, либо с текстовыми форматами вроде EPUB. Episteme пытается усидеть на всех стульях сразу, и у него это получается благодаря использованию разных движков под конкретные задачи.

Реклама

Список поддерживаемых форматов выглядит солидно:

  • Классика: PDF, DOCX, EPUB, FB2.
  • Комиксы: CBZ, CBR, CB7 (редкая птица для универсальных читалок).
  • Техническая литература: MOBI, AZW3 (форматы Kindle).
  • Текстовые файлы: Markdown, TXT, HTML.

Для PDF используется pdfium-android, что дает плавный скролл и возможность рисовать поверх страниц. Для EPUB разработчик реализовал два режима: привычный WebView для вертикальной прокрутки и кастомный движок для постраничного чтения.

Аннотации и работа с текстом

Если вы используете планшет для учебы или работы, вам понравится работа с аннотациями в PDF. В приложении есть полноценный инструментарий для заметок: перо, маркер и ластик. Можно накидать мысли прямо на полях или выделить важную цитату.

Кстати, о цитатах. В приложении встроен движок Text-to-Speech (TTS). Если глаза устали, можно переключиться в режим аудиокниги. Это стандартная системная функция, но здесь она вписана в интерфейс без лишних костылей.

Как это устроено внутри

Для разработчиков Episteme интересен как учебное пособие по Jetpack Compose и Material 3. Архитектура построена на классическом MVVM с однонаправленным потоком данных (Unidirectional Data Flow).

Технологический стек проекта:

  • UI: Jetpack Compose. Никаких XML, только декларативный подход.
  • База данных: Room (SQLite) для хранения метаданных книг и ваших аннотаций.
  • Сетевой слой: Используется для работы с OPDS-каталогами (библиотеками в сети).
  • Нативные вставки: Для поддержки MOBI и AZW3 используются JNI-биндинги к библиотеке libmobi.

Проект активно использует возможности Kotlinx Serialization и Coil для загрузки обложек. Если вы планируете внедрять Material 3 в свой проект, посмотрите, как здесь реализованы темы: есть поддержка темной темы, сепии и специального OLED-режима, который реально экономит заряд на соответствующих экранах.

Зачем это нужно разработчику

Помимо прямого назначения — чтения документации в PDF или книг по архитектуре ПО — проект полезен как база для своих наработок. Например, если вам нужно внедрить просмотр документов в свое приложение, можно подсмотреть, как автор реализовал интеграцию pdfium или парсинг Markdown через Flexmark.

Еще одна крутая фишка — поддержка OPDS 1.x/2.0. Это позволяет подключаться к сетевым библиотекам и скачивать книги напрямую, не используя браузер. Реализация парсинга фидов здесь довольно легковесная и понятная.

Как собрать и пощупать

Сборка стандартная для Android-проектов. Клонируете репозиторий, открываете в Android Studio и запускаете вариант ossDebug.

git clone https://github.com/Aryan-Raj3112/episteme.git
cd episteme
./gradlew assembleOssDebug

Готовый APK появится в папке app/build/outputs/apk/oss/debug/.

Episteme Reader не пытается совершить революцию, но он делает одну вещь и делает ее хорошо: дает читать книги без лишнего шума. Проект подойдет тем, кто:

  1. Ищет легкую читалку без рекламы и трекеров.
  2. Хочет изучить качественную реализацию Jetpack Compose на реальном примере.
  3. Нуждается в инструменте для чтения комиксов и PDF с возможностью делать пометки.

Конечно, в коде можно найти места для оптимизации, а список открытых Issue намекает, что работы еще много. Но именно это делает проект отличным местом для первого контрибьюта в Open Source.