DEV Community

J Now
J Now

Posted on

Inline Wikipedia for every page you read

Every article has words I half-know. Not words I'd look up — that bar's too high — but words I'd understand if someone just told me what they meant, right there, in three sentences. Opening a new tab is enough friction that I skip them. Skipping enough of them means I finish the article without really reading it.

So I built rabbitholes: a Chrome extension that renders an explanation next to your cursor when you highlight any text, inside a shadow-DOM tooltip that doesn't touch the host page's styles or layout.

The part that made it useful rather than just convenient: you can click any word in the explanation to go deeper, or drag across a phrase. Every answer ends with two suggested rabbit-hole topics — the most interesting threads from that point. A counter tracks how many hops you've taken. Get deep enough into something and you have a shareable trail.

Two other things I use constantly: the pencil icon opens a free-form follow-up that inherits the current context, so you don't have to re-explain what you were reading. The globe icon re-runs the query enriched with Brave Search results and shows source chips you can click through.

A few implementation notes that mattered:

  • Shadow DOM instead of injecting into the host page — tooltips can't inherit fonts or z-index conflicts that break on half the sites I read
  • Manifest V3, API key stored in chrome.storage.sync (encrypted, never leaves the browser)
  • Zero telemetry, no intermediary server — requests go directly from your browser to api.anthropic.com and api.search.brave.com
// The extension never proxies your requests.
// Browser -> api.anthropic.com directly.
// Your key stays in chrome.storage.sync.
Enter fullscreen mode Exit fullscreen mode

I built this because I wanted the whole reading experience to change, not just individual lookups. It has. I read slower now, in the good way.

https://github.com/robertnowell/rabbitholes

Top comments (0)