JustRead icon
JustRead · FastRead

A quiet reader for articles and books you actually want to finish.

JustRead turns web pages, EPUBs, and pasted text into a clean reading surface, then adds RSVP playback for the moments when you want pace without visual noise.

iOS beta · Chrome Web Store · Android internal testing

Reading pipelineImportCleanChunkPaceContinue
§ Surfaces

One product, three real runtimes. The public page is deliberately honest about what each surface does today.

iOS beta

Best for EPUBs and long-form reading. Installs through TestFlight while the native app is still being hardened.

TestFlight

Chrome extension

Reader View plus RSVP mode for web articles, with light/dark themes and keyboard-first controls.

Chrome Web Store

Android internal

Native Compose app with the same core reading flow and Play release lane.

Repo notes
§ Product proof

Not a concept page. These are shipped surfaces.

The screenshots come from the current Chrome and Android release assets in the FastRead repo, so the page stays connected to the product instead of drifting into mockup-land.

JustRead Android add source screenJustRead Android reader screen
Local-first by default

Reading content stays on the device.

JustRead has no account system, no third-party telemetry, and no reading-content upload. The repo keeps the privacy policy, release notes, and verifier scripts next to the app code.

  • Chrome stores preferences in chrome.storage.
  • Native apps persist library state locally.
  • Release docs name required env vars without exposing credentials.
Build matrix

The source is useful, not ornamental.

FastRead ships SwiftUI, Compose, and Manifest V3 surfaces from one public repo, with verifiers for each runtime and fixtures for the reader pipeline.

  • SwiftPM core tests
  • Chrome typecheck + Vitest
  • Android JVM tests

Chrome companion

Strip clutter from any web article, switch into RSVP speed reading, and keep everything local in the browser.

Native mobile

iOS and Android share the same reading model: import, clean, tokenize, then read in a controlled stage.

Privacy posture

No account, no developer analytics, no reading-content upload. Preferences and recent reads stay in local app or browser storage.