Skip to content

ReadAware v0.3.0

Choose a tag to compare

@github-actions github-actions released this 07 Aug 10:41
· 111 commits to main since this release

ReadAware 0.3.0 is the release where the app stops being a fixed set of features and becomes something you extend. Plugins run in real sandboxes, contribute to almost every surface, and ship through a marketplace. The agent grows tools and traces, the reader grows an ending, and both the book and the conversation are now yours to typeset.

New

Plugins. A full plugin system: sandboxed workers with permission-gated capabilities, a TypeScript-first authoring path (@read-aware/plugin-types), and a marketplace with install-time consent. Plugins contribute reader menus, headers, command-palette entries, whole pages, AI tools, dictionary lookups, themes and bundled fonts, voice engines, scheduled tasks, and even virtual books that live on your shelf like any other title. Five ship built in — Dictionary, RSS Reader, Sentence Reader, TTS Voices, and Editorial Themes.

Read-aloud. The reader speaks, following the same sentence/paragraph navigator you read by. Any TTS engine can plug in, with per-provider voices and custom endpoints.

An ending. Finishing a book now lands on an end-of-book screen instead of a dead stop, with an optional look back written by the agent.

Agent as a destination. The agent gets its own primary page with multiple threads, grounding in where you actually are in the book, expandable execution traces, and tools that can safely read and change your settings.

More formats. CBZ, CBR, TXT, and HTML join EPUB, MOBI, AZW3, FB2, and PDF. Covers and metadata fill in at import.

Make it yours. Primary navigation and every menu surface are drag-arrangeable. The command palette works while reading, and Mod+1..9 jumps between destinations.

Typography for the app, not just the book. Chat replies, notes, and plugin views get their own font, size, and line spacing — following your reading settings by default, or detached if you'd rather. Text alignment becomes a reading setting too, defaulting to whatever the publisher chose.

Improved

  • The progress bar in the reader header is a scrubber you can drag.
  • Fixed-layout books (PDF, comics) take annotations and swipe page turns.
  • AI provider setup is simpler, remembers a model per provider, and supports per-tier thinking effort for smart and fast models.
  • Your API key is encrypted at rest, and AI requests route through native HTTP instead of the webview.
  • All state changes are event-sourced: projections rebuild from an append-only log and can be verified against it.
  • The shelf grid fills wide windows, and book titles from file names come out clean.
  • The desktop app inherits your macOS system proxy.
  • Dev builds get their own identity and data directory, so they no longer share the release app's library.
  • Docs and blog on readaware.app are now available in English, Simplified Chinese, and Japanese.

Fixed

  • Books whose stylesheets pin a near-black text color are no longer invisible on the dark page color — a whole class of calibre-converted EPUBs was unreadable in dark mode.
  • EPUB 3 inline footnote bodies (<aside epub:type="footnote">) stay hidden and open in a popover, instead of dumping a chapter's worth of notes into the prose.
  • The line-spacing setting now works on books that declare their own line height on paragraphs, where it previously did nothing at all.
  • Chapter headings in real-world .txt files are recognized.
  • Android ships with its built-in plugins, and serves plugin assets over the scheme it actually uses.
  • The marketplace remembers the last mirror that worked.
  • Stray taps on the reader's progress bar no longer seek on touch devices.
  • Plugin pages scroll as pages, virtual rows re-measure when content above them changes, and open settings forms adopt external writes instead of shadowing them.
  • Marketplace file paths are allowlist-validated, closing a Windows drive-relative path bypass.

Full Changelog: v0.2.10...v0.3.0