Material You 3 eBook/audiobook reader — Episteme fork + bookshelf-api/ABS
Find a file
Aryan 8366d76dcd
Windows (#291)
* Centralize library management logic and introduce support for plain text and HTML formats

* Centralize library management logic and introduce support for plain text and HTML formats

* Expand unit test coverage for library state management, UI models, and MainViewModel features.

* Add comprehensive unit tests for PDF reader core logic, preferences, and data persistence

* Add unit tests for EPUB parsing, content loading, search functionality, and reader JavaScript bridges.

* Add unit tests for OPDS parsing and Smart Collection engine, and integrate Kover plugin

* Add comprehensive unit tests

* Centralize library snapshot serialization in the `shared` module and improve filtering and sorting logic.

* Implement text selection, highlighting, and reading state persistence for PDF and EPUB engines in desktop version

* Folder import support for desktop app

* Introduce Smart Shelves with rule-based filtering in desktop version

* Implement shared EPUB annotation serialization and highlight rendering

* Centralize file type capabilities and platform-specific support logic

* Refactor reader state management to use a central reducer

* Implement customizable reader toolbar and advanced formatting settings in shared

* Implement locator-based navigation and customizable highlight palette for desktop app

* Enhance reader customization and expand search functionality in desktop app

* Redesign reader settings and tools into a tabbed control panel in desktop app

* Enhance reader navigation and highlight precision in desktop app

* Implement bidirectional position synchronization and dynamic highlights in the desktop reader

* Implement shared state management and enhanced search for the PDF reader in desktop app

* Add vertical scroll support to the desktop PDF reader

* Implement ink, text, and eraser annotation support in desktop PDF viewer

* Implement PDF bookmarks, Table of Contents, and annotation editing in desktop app

* Implement link handling and navigation for PDF and EPUB readers in desktop app

* Implement PDF jump history for navigation in desktop app

* Enhance PDF ink rendering and annotation capabilities in desktop app

* Implement advanced PDF text annotations with inline editing and rich styling in desktop app

* Add move handle and movement logic for PDF text annotations in desktop app

* Implement local folder synchronization and metadata sidecar support in desktop app

* Implement book metadata extraction and drag-and-drop import for Desktop

* Implement dynamic and custom app theme management for desktop

* Introduce canonical PDF annotation codec and support for multi-segment highlights

* Implement rich text editing and pagination support for the PDF reader in desktop app

* Improve PDF rich text pagination, synchronization, and observability in desktop

* Hide trailing structural page breaks in rich text editor

* Implement a unified JVM book loader and expand supported formats on Desktop

* Add comic archive support for Desktop and enhance MOBI parsing

* Implement shared OPDS catalog support and UI for Android and Desktop

* Improve native WebView lifecycle and surface transition management on Desktop

* Enable Compose Swing interop blending and simplify Desktop WebView management

* Integrate BYOK AI features and Cloud TTS for desktop

* Enhance Desktop TTS with streaming audio and improved secure storage for AI key

* Implement scoped Cloud TTS with synchronized highlighting for EPUB and PDF in desktop app

* Implement custom font management and utility screens in desktop app

* Implement PDFium-based PDF annotation export

* Remove PdfBox dependency and standardize PDF export via Pdfium

* Implement local audio caching and playback controls for Gemini Cloud TTS in desktop app

* Implement reader themes and custom texture support in desktop app

* Redesign non-reader UI with responsive navigation and enhanced library management in desktop app

* Introduce ReaderWorkspaceShell to unify EPUB and PDF reader layouts in desktop app

* Exclude manual-only files from automated sync and import

* Implement customizable Text-to-Speech (TTS) word replacements

* Optimize reader performance with persistent layout caching and decoupled theme rendering

* Improve position restoration during reader reconfiguration in epub pagination

* Use independent thickness for eraser tool and stylus override
2026-05-10 10:07:37 +05:30
.github Add Patreon funding option (#259) 2026-04-30 13:29:02 +05:30
.idea v1.0.47 (#279) 2026-05-04 21:55:38 +05:30
app Windows (#291) 2026-05-10 10:07:37 +05:30
desktopApp Windows (#291) 2026-05-10 10:07:37 +05:30
docs docs: Revamp README and add APK naming convention (#2) 2026-02-25 19:54:43 +05:30
fastlane/metadata/android/en-US update description, phone images and feature graphic in fastlane (#67) 2026-03-14 14:16:36 +05:30
gradle v1.0.47 (#279) 2026-05-04 21:55:38 +05:30
shared Windows (#291) 2026-05-10 10:07:37 +05:30
spotless Update readme (#3) 2026-02-25 21:30:28 +05:30
.gitattributes App themes (#217) 2026-04-21 18:11:55 +05:30
.gitignore v1.0.47 (#279) 2026-05-04 21:55:38 +05:30
build.gradle.kts Windows (#291) 2026-05-10 10:07:37 +05:30
CLA.md docs: add CLA and CONTRIBUTING guidelines (#26) 2026-03-04 10:19:17 +05:30
CONTRIBUTING.md cla (#62) 2026-03-12 22:31:52 +05:30
gradle.properties Initial commit 2026-02-24 17:37:40 +05:30
gradlew Initial commit 2026-02-24 17:37:40 +05:30
gradlew.bat Initial commit 2026-02-24 17:37:40 +05:30
LICENSE Pdf text highlight (#49) 2026-03-09 17:37:44 +05:30
README.md Update README (#260) 2026-04-30 13:59:25 +05:30
settings.gradle.kts v1.0.47 (#279) 2026-05-04 21:55:38 +05:30

Episteme Reader Icon  Episteme Reader

A modern, offlinefirst, privacyfocused document & ebook reader for Android, built with Kotlin and Jetpack Compose.

Get it on F-Droid Get it on Google Play   Get it on Obtainium


Episteme Reader Preview

Overview

Episteme Reader is a comprehensive, customizable reader for documents and e-books on Android. It features a modern Jetpack Compose UI, powerful reading tools, and extensive theming.

To best serve different user preferences regarding privacy and network usage, Episteme Reader is available in three distinct editions:

  • PlayStore Version: The full-featured release which includes proprietary code and features.
  • OSS Version (GitHub/F-Droid): A fully open-source build.
  • OSS Offline Version (GitHub): A strictly offline build with network permissions completely removed.

Feature Comparison

📚 Supported Formats

Feature PlayStore OSS OSS Offline
Documents: PDF, DOCX, ODT/FODT
E-books & Text: EPUB, MOBI, AZW3, FB2, MD, HTML, TXT
Comics: CBZ, CBR, CB7
View-Only: CSV, TSV, JSON, XML, Logs, Code Files

📖 Core Reading Experience

Feature PlayStore OSS OSS Offline
Display Modes: Paginated & Vertical Scroll
PDF Multi-Tab Reading & Reflow
PDF Annotations: Ink (Pen, Highlight, Erase) & Text
App-wide Customization & Reader Theming
Custom Fonts: Local Import (TTF and OTF)
Typography Control
Auto-Scroll & Musician Mode
System Text-to-Speech (TTS)

⚙️ Advanced & Network Features

Feature PlayStore OSS (F-Droid) OSS Offline
Local Folder Sync & Library Management
Download Google Fonts
OPDS Catalog Support
PDF Bubble Zoom Magnifier
ML Kit OCR (Scanned PDF Text Selection)
Cross-Device Cloud Sync
AI Tools (Summaries, Story Recap, Dictionary) 🔜
Cloud Text-to-Speech 🔜

Building from Source

  1. Clone the repository:

    git clone https://github.com/Aryan-Raj3112/episteme.git
    cd episteme
    
  2. Build:

    • Open in Android Studio and run the ossDebug or ossOfflineDebug variant, or
    • Build from the command line:
      ./gradlew assembleOssDebug
      

    The APK will be generated at: app/build/outputs/apk/oss/debug/Episteme-oss-v{version}-oss-debug.apk

Open Source Libraries

Powered by the Android OSS ecosystem:

  • Core & UI: AndroidX, Jetpack Compose, Kotlinx Serialization
  • Document Engines: PdfiumAndroidKt (PDF), libmobi (MOBI/AZW3)
  • Parsers: Jsoup (HTML/EPUB), Flexmark (Markdown)
  • Media & Image Loading: Coil, Media3 (ExoPlayer)
  • Utilities: Room (Database), Timber (Logging)

Contributors

Contributor Contribution
CCerrer avatarCCerrer Testing & QA
ottozumkeller avatar ottozumkeller Translation (German)
TURBOKANTR avatar TURBOKANTR Translation (Turkish)
eyadalkordy24 avatareyadalkordy24 Translation (Arabic)
berebara avatarberebara Translation (Russian)
mh4ckt3mh4ckt1c4s avatarmh4ckt3mh4ckt1c4s Translation (French)

Translations

Help translate Episteme Reader into your native language! Weblate is used to manage localization.

Translation status

License

Licensed under the GNU Affero General Public License v3.0 (AGPL3.0). See the LICENSE file.

Support the Project

Help make Episteme Reader even better: