Plainsight: a sneak peek at a free reading-accessibility extension

DHSeaDev — Chrome Extensions, Windows Tools, & Idle Games

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.
Plain text next to the same paragraph with Plainsight’s six modules applied A comparison figure: on the left, six flat gray lines representing an unmodified web page. On the right, the same lines re-rendered with a bold-start word on each line for bionic reading, a blue-to-orange color gradient along the line, and a highlighted horizontal band for the reading ruler. Below both, six small pill labels — Font, Overlay, Bionic, Gradient, Ruler, Read aloud — each with a softly pulsing dot, representing the six independent, free toggles. BEFORE AFTER — PLAINSIGHT Read Prac- Focus Track Learn ing helps you learn tice makes it easier on one line at a time ing the eye down ing without strain FONT OVERLAY BIONIC GRADIENT RULER READ ALOUD Six modules, six independent toggles, zero network calls behind any of them.
The same paragraph, before and after Plainsight’s six modules — every toggle is independent, and none of them phones home.

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

Your email address will not be published. Required fields are marked *