Plainsight is a concept for a free, local-only reading-accessibility extension for Chrome — dyslexia-friendly type, tinted overlays, bionic reading, a line-focus ruler, a BeeLine-style color gradient, and on-device read-aloud with word highlighting, in one toggleable set. It has no Chrome Web Store listing yet. What exists today is a working v0.1.0 build, verified in a real browser this week, and this post is that sneak peek — not a launch.
What Plainsight does
Six modules, each an independent toggle, all running on the page you are already reading — no separate reader view to copy text into:
- A dyslexia-friendly type stack, with adjustable letter and line spacing.
- Tinted color overlays (blue, yellow, green, pink, gray) at low, legibility-safe opacity.
- Bionic reading — the first part of each word set bold as a fixation aid, ratio adjustable.
- A BeeLine-style color gradient down each line, so your eye tracks the wrap instead of losing it.
- A line-focus reading ruler that follows the cursor and dims everything outside the band.
- On-device read-aloud with word-by-word highlighting, using the browser’s own Web Speech voices.
What already exists, and where it stops being free
None of this is a new category. Three tools already do parts of it well, and the research behind Plainsight started by reading what their own listings and pricing pages say, checked again while writing this post (2026-09-01):
- BeeLine Reader popularized the color-gradient reading line this concept borrows. Its Chrome Web Store listing offers a free mode limited to a list of favorite sites, with BeeLine Pro at $1.99/month and a five-browser family pack at $8/year for use everywhere else. It carries a 3.5-star rating across 210 reviews.
- Speechify covers the read-aloud half. Per its own site, the Chrome extension runs on a 3-day free trial; after that, continued use requires Premium at $139/year ($11.58/month), and the free tier that remains is capped to standard-quality voices at 250 words per minute.
- Helperbird is the closest match in spirit — its free tier is genuinely generous, and already covers fonts, overlays, TTS and PDF reading with no account required. Its Pro tier is $30/year, gated mainly behind natural voices with word highlighting, AI summarize/simplify, and PDF annotation.
Read individually, none of these is doing anything wrong — a subscription is a reasonable way to fund ongoing voice-model and infrastructure costs. But stacked, a reader who wants BeeLine’s gradient, Speechify’s natural read-aloud, and Helperbird’s full toolkit in one browser is looking at three separate accounts and upward of $170 a year, for features that — gradient math, bionic bolding, overlay tinting, ruler geometry — do not require a server at all.
How Plainsight is different, for free
Plainsight ships all six modules in the free tier, because there is no paid tier — no account, no server, no subscription to eventually hit a paywall on. The manifest’s own content-security-policy sets connect-src 'none', and nothing in the codebase calls fetch, XHR, or WebSocket; a build-time gate greps for exactly that and fails the build if it ever finds one. Settings live in chrome.storage.local only.
The honest trade-off is voice quality. Plainsight’s read-aloud uses only the Web Speech API voices already installed in your browser and OS — the same zero-network posture as the other five modules — so it will not match Speechify’s paid neural voices. That is a stated scoping decision, not a hidden gap: the alternative was bundling a cloud TTS provider, which would have meant an account, a rate limit, and eventually a bill, the exact thing this build exists to avoid.
Why this is a sneak peek and not a launch
There is no Chrome Web Store listing for Plainsight, and no project page on this site yet — this post is the only public surface, on purpose, while the name and scope are still concepts rather than commitments. What is real: a working v0.1.0 was built and tested this week, including a real-Chromium pass (not just headless-shell, which cannot load Manifest V3 extensions) that found and fixed one genuine defect — two of the extension’s own files both declared a top-level const api, which collided as a duplicate declaration once loaded together in the same popup page and silently broke every settings toggle. A Node-only unit test suite could not have caught it; a real browser pass did.
Also stated rather than hidden: the color-gradient module approximates line breaks by character count instead of measuring real visual lines, and no OpenDyslexic or Atkinson Hyperlegible font file is bundled — the font module is a CSS stack that prefers those faces if you already have them installed, and falls back cleanly if you don’t. Both are documented follow-ups, not oversights.
What’s next
Cleaning up the working name, deciding what a Chrome Web Store submission needs, and — if the concept holds up — a real project page with its own screenshots. Until then, this post is where updates on Plainsight will land.

Leave a Reply