An open API service indexing awesome lists of open source software.

https://github.com/Aryan-Raj3112/episteme

A multi-platform document and e-book reader.
https://github.com/Aryan-Raj3112/episteme

android ebook epub foss jetpack-compose kotlin linux opensource pdf reader windows

Last synced: about 8 hours ago
JSON representation

A multi-platform document and e-book reader.

Awesome Lists containing this project

README

          


Episteme Reader Icon
 Episteme Reader

A modern, offline-first, privacy-focused document and e-book reader for Android and desktop, built with Kotlin Multiplatform and Compose.

Download from epistemereader.com  Get it on F-Droid Get it on Google Play   Get it on Obtainium




Episteme Reader on Android


Android


Episteme Reader on desktop


Desktop

## Overview

Episteme Reader is a customizable reader for documents, e-books, comics, and text-heavy files. The app is designed around local-first reading, deep typography controls, flexible layouts, and a consistent Kotlin Multiplatform core across Android and desktop.

The same core reading experience is available across editions. The main differences are distribution channel, network access, and whether proprietary online services are included.

## Core Features

Available across supported editions unless noted in the edition table:

* **Formats:** PDF, EPUB, MOBI/AZW3, FB2, DOCX, ODT/FODT, TXT, Markdown, HTML, and comic archives.
* **Reading modes:** Paginated reading, vertical scroll, PDF multi-tab reading, PDF reflow, auto-scroll, and musician mode.
* **PDF tools:** Ink annotations, highlighting, erasing, text annotations, and reading-focused PDF controls.
* **Customization:** App themes, reader themes, custom local fonts, typography controls, spacing, margins, and layout tuning.
* **Library tools:** Local folder sync, library organization, bookmarks, progress tracking, and file management.
* **Accessibility:** System text-to-speech, app language selection, and reader settings that adapt to different reading preferences.

## Editions

| Edition | Platform | Network access | Distribution | Notes |
|---|---|---|---|---|
| **Play Store** | Android | Online-capable | [Google Play](https://play.google.com/store/apps/details?id=com.aryan.reader) | Full Android release with proprietary extras such as ML Kit OCR, cloud sync, AI tools, cloud TTS, and PDF bubble zoom. |
| **OSS** | Android | Online-capable | [epistemereader.com](https://epistemereader.com), [GitHub](https://github.com/Aryan-Raj3112/episteme/releases), [F-Droid](https://f-droid.org/packages/com.aryan.reader.oss/), [Obtainium](https://apps.obtainium.imranr.dev/redirect.html?r=obtainium://add/https://github.com/Aryan-Raj3112/episteme) | Fully open-source Android build with OPDS, downloadable fonts, and BYOK access to AI and cloud features. |
| **OSS Offline** | Android | Offline-only | [epistemereader.com](https://epistemereader.com), [GitHub](https://github.com/Aryan-Raj3112/episteme/releases), [Obtainium](https://apps.obtainium.imranr.dev/redirect.html?r=obtainium://add/https://github.com/Aryan-Raj3112/episteme) | Open-source Android build with network permissions removed. |
| **Standard** | Desktop (Linux, Windows) | Online-capable | [epistemereader.com](https://epistemereader.com), [GitHub](https://github.com/Aryan-Raj3112/episteme/releases) | Full-featured desktop release with the shared KMP reader core and online-capable services. |
| **Offline** | Desktop (Linux, Windows) | Offline-only | [epistemereader.com](https://epistemereader.com), [GitHub](https://github.com/Aryan-Raj3112/episteme/releases) | Desktop build focused on local reading with online services disabled. |

Future desktop platforms can use the same Standard and Offline model as support expands.

## Languages

Episteme Reader currently supports: English, Arabic, Belarusian, German, Spanish, Estonian, French, Hindi, Indonesian, Italian, Japanese, Korean, Dutch, Polish, Portuguese (Brazil), Russian, Turkish, Ukrainian, Vietnamese, and Chinese Simplified.

Want Episteme Reader in another language? Please request it through [GitHub Issues](https://github.com/Aryan-Raj3112/episteme/issues/new/choose) or start a thread in [Discussions](https://github.com/Aryan-Raj3112/episteme/discussions).

## Building from Source

1. Clone the repository:
```bash
git clone https://github.com/Aryan-Raj3112/episteme.git
cd episteme
```

2. Build Android:
* Open in Android Studio and run the `ossDebug` or `ossOfflineDebug` variant, or
* Build from the command line:
```bash
./gradlew assembleOssDebug
```
The APK will be generated at:
`app/build/outputs/apk/oss/debug/Episteme-oss-v{version}-oss-debug.apk`

3. Build desktop:
```bash
./gradlew :desktopApp:packageReleaseDistributionForCurrentOS
```
For the offline desktop build, pass:
```bash
./gradlew :desktopApp:packageReleaseDistributionForCurrentOS -PdesktopFlavor=oss
```

## Open Source Libraries

Powered by the Kotlin, Android, and desktop OSS ecosystem:

* **Core and UI:** Kotlin Multiplatform, Compose Multiplatform, AndroidX, Jetpack Compose, Kotlinx Serialization
* **Document engines:** PdfiumAndroidKt, PDFium, libmobi
* **Parsers:** Jsoup, Flexmark, Apache Commons Compress
* **Media and image loading:** Coil, Media3
* **Utilities:** Room, Timber, JNA

## Contributors

| Contributor | Contribution |
|---|---|
| CCerrer avatar [CCerrer](https://github.com/CCerrer) | Testing and QA |
| ottozumkeller avatar [ottozumkeller](https://github.com/ottozumkeller) | German translation |
| TURBOKANTR avatar [TURBOKANTR](https://github.com/TURBOKANTR) | Turkish translation |
| eyadalkordy24 avatar [eyadalkordy24](https://github.com/eyadalkordy24) | Arabic translation |
| berebara avatar [berebara](https://github.com/berebara) | Russian translation |
| mh4ckt3mh4ckt1c4s avatar [mh4ckt3mh4ckt1c4s](https://github.com/mh4ckt3mh4ckt1c4s) | French translation |

## Supporters

Thank you to the people helping keep Episteme Reader moving:

| Supporter | Platform |
|---|---|
| Myshadowslullaby avatar [Myshadowslullaby](https://github.com/Myshadowslullaby) | GitHub Sponsors |

## Support the Project

Help make Episteme Reader better:

* [Sponsor on GitHub](https://github.com/sponsors/Aryan-Raj3112)
* [Support on Patreon](https://www.patreon.com/c/epistemereader)
* Star the repository to help visibility
* Report bugs or request features via [GitHub Issues](https://github.com/Aryan-Raj3112/episteme/issues/new/choose)
* Share feedback in [Discussions](https://github.com/Aryan-Raj3112/episteme/discussions)
* Leave a review on the [Google Play Store](https://play.google.com/store/apps/details?id=com.aryan.reader)
* Tell a friend

## License

Licensed under the GNU Affero General Public License v3.0 only (AGPL-3.0-only). See the [LICENSE](../LICENSE) file.