Inspiration
Reading is often solitary, and it is easy to lose the thread of a difficult book or the personal insight a passage sparked. CoReader turns a reading session into an ongoing conversation: it helps readers understand the book in the moment, save meaningful passages, and return to their ideas later.
What it does
CoReader is an Android reading companion for public-domain books. Readers can:
- Browse free classics from the Standard Ebooks catalog.
- Open and read EPUB content in an uncluttered, immersive reader.
- Ask for a concise summary or pose questions while reading.
- Highlight passages and save them directly to a personal reading journal.
- Turn highlights into reflection prompts, then develop and save journal entries.
- Start an immersive listening session with text-to-speech narration, adjustable speed, and a chapter-aware soundscape.
The experience is designed to keep attention on the book while making comprehension and reflection available exactly when they are useful.
How it works
The Android app is built with Kotlin and Jetpack Compose. It organizes the reading flow into Browse, Reader, and Journal experiences, with Room persistence for saved books, highlights, and journal entries. The reader loads EPUB chapters, sends focused requests to a lightweight backend, and keeps the interface responsive as summaries, questions, reflection prompts, and soundscape selections are prepared.
The Node.js backend exposes a small API for book summaries, reading questions, journal prompts, and chapter soundscapes. Its API contract is designed to support richer retrieval and model-backed responses as EPUB ingestion and AI providers are expanded.
Built with Codex and GPT-5.6
Codex accelerated the implementation of the Android Compose UI, navigation, local data layer, EPUB reading flow, immersive playback controls, and the companion backend. GPT-5.6 was used through Codex to iterate on product behavior, shape API contracts, troubleshoot implementation details, and turn the reading workflow into a cohesive app experience. This let us move quickly between interface design, Kotlin/Compose development, and backend integration while keeping the reader journey consistent.
Challenges we ran into
A reading companion has to add help without pulling the reader out of the book. We focused on lightweight, contextual interactions: an on-demand assistant rather than a disruptive chat surface, highlights that flow naturally into a journal, and immersion controls that remain secondary to the text. We also designed the backend around stable client contracts so model-powered retrieval can evolve without forcing changes throughout the Android app.
Accomplishments that we're proud of
We built a complete reading-to-reflection loop: discover a book, read it, ask for help, preserve a passage, and turn it into a journal entry. We are especially proud of the immersive reading controls and of making reflection a first-class part of the reading experience rather than an afterthought.
What's next for CoReader
Next we will add full EPUB ingestion and chapter-level retrieval with citations, replace deterministic backend fallbacks with model-backed responses, expand the library and sync options, and refine personalized soundscapes and reflection guidance.
Built With
- android
- codex
- firebase-functions
- gpt-5.6
- javascript
- jetpack-compose
- kotlin
- node.js
- room
- standard-ebooks
Log in or sign up for Devpost to join the conversation.