No description
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Claude c132b53f4e
Some checks are pending
Build APK / build (push) Waiting to run
Draw the page flip with an explicit perspective matrix
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EtFge21SWba2ktGjJgrvdb
2026-10-06 00:50:58 +00:00
.github/workflows Add Robolectric screenshot test and publish screenshots from CI 2026-10-06 00:44:10 +00:00
app Draw the page flip with an explicit perspective matrix 2026-10-06 00:50:58 +00:00
gradle/wrapper EPUB reader app: Gruvbox UI, manga-style library, scroll/paged/flip modes 2026-10-05 23:13:20 +00:00
.gitignore EPUB reader app: Gruvbox UI, manga-style library, scroll/paged/flip modes 2026-10-05 23:13:20 +00:00
build.gradle EPUB reader app: Gruvbox UI, manga-style library, scroll/paged/flip modes 2026-10-05 23:13:20 +00:00
gradle.properties EPUB reader app: Gruvbox UI, manga-style library, scroll/paged/flip modes 2026-10-05 23:13:20 +00:00
gradlew EPUB reader app: Gruvbox UI, manga-style library, scroll/paged/flip modes 2026-10-05 23:13:20 +00:00
gradlew.bat EPUB reader app: Gruvbox UI, manga-style library, scroll/paged/flip modes 2026-10-05 23:13:20 +00:00
README.md Rewrite as a native Android app (no WebView) for low RAM and CPU use 2026-10-06 00:40:52 +00:00
settings.gradle EPUB reader app: Gruvbox UI, manga-style library, scroll/paged/flip modes 2026-10-05 23:13:20 +00:00

Reader

A cozy, lightweight EPUB reader for Android, made for reading webnovels. Gruvbox dark theme with a pink accent, and a library laid out like a manga reader.

Features

  • Library with cover grid, a "continue reading" card, unread-chapter badges, search and sorting
  • Book page like a manga app: blurred cover header, description, chapter list with read markers, bookmarks
  • Three reading modes
    • Infinite scroll: chapters load as you scroll
    • Paged: swipe or tap to slide between pages
    • Book flip: pages turn like a real book, and the page follows your finger
  • Text settings: 7 bundled fonts (Literata, Merriweather, Lora, EB Garamond, Atkinson Hyperlegible, Nunito, OpenDyslexic) plus system fonts; size, line spacing, paragraph spacing, letter spacing, margins, justify, hyphenation, indent, bolder text
  • Themes: Gruvbox Dark (default), Dark Hard, AMOLED, Gruvbox Light, Light Soft, with 7 Gruvbox accent colours (pink is the default)
  • Tap zones (normal, inverted, next only, off), volume-key page turns, auto-scroll and auto page turn, brightness, keep screen on, fullscreen, page/clock status line
  • Opens .epub files straight from a file manager or the "Share" menu

Install

Grab the latest Reader-*.apk from Releases, open it on your phone, and allow installing from unknown sources.

Build

Every push runs .github/workflows/build.yml, which builds a signed release APK and publishes it as a GitHub release.

Locally (requires the Android SDK):

./gradlew assembleRelease

The app is plain Android Java with no libraries and no WebView, so it stays light on RAM and CPU:

  • Epub.java reads the EPUB straight from the zip (nothing is unpacked)
  • Renderer.java turns chapter XHTML into styled text
  • ReaderView.java draws pages with StaticLayout and handles scroll, slide and the 3D page flip
  • MainActivity, BookActivity and ReaderActivity are the library, book page and reader screens, built in code by Ui.java and SettingsPanel.java
  • Fonts live in app/src/main/assets/fonts (subset to Latin, Greek and Cyrillic)