ReadAware

Plugins: the reader, extended

ReadAware now has a plugin system. You can write a plugin in an evening, install it from a folder while you develop it, and submit it to a community marketplace where anyone can install it in one click.

What you can build

A plugin is a folder with a manifest and one JavaScript module, and it can contribute:

  • Selection actions — select text in any book and act on it: send a word to Anki, translate a passage, post a quote to your notes app.
  • Header buttons and pages — a popover on the reader's top bar, or a full page on the shelf.
  • Commands — everything lands in the command palette automatically.
  • Tools for the assistant — this is the one we care most about. A plugin can hand the reading agent a new tool, and the agent decides when to call it mid-conversation. "Which of these words are already in my Anki deck?" becomes answerable.
  • Books that aren't files — a content provider serves chapters on demand, so an RSS feed can sit on your shelf and be read, highlighted, and discussed exactly like a book.

Native by construction

We took the interface philosophy from Raycast: plugins do not render their own UI. They declare views — markdown, lists, forms, structured blocks — and the app renders them with its own design system. A plugin page is indistinguishable from a built-in one, because it is built from the same parts. Plugin authors do zero design work; the app stays one calm surface.

And you stay in charge of the furniture: plugins contribute capabilities, but Settings → Menus decides which buttons appear where, in what order. New plugin actions arrive in the overflow menu, not in your face.

Honest about trust

The trust model is Obsidian's, stated plainly: plugins run inside the app, and installing one is trusting its author. Manifests declare permissions — network, reading data, AI, clipboard — and the API enforces them, which catches accidents, not malice. So the app shows you every permission in plain language before a single file is copied, and the marketplace reviews every submission in the open, readable source required. No dark corners, no "it's sandboxed" theater.

Start here

The API reference documents the whole contract, and the marketplace repository has a TypeScript template plus the official plugins as working examples. Write one, and when it is good, send it in — the marketplace tab in Settings is waiting for its first community plugins.

← All posts