DEV Community

J Now
J Now

Posted on

I wanted Wikipedia on every page, so I built it into every page

Every article I read has words I half-know. The kind where I understand the sentence but not the concept underneath it — and if I knew the concept, the whole paragraph would open up. Opening a new tab to look it up breaks focus so completely that I usually just skip past. That left me with a lot of shallow reads.

So I built rabbitholes: a Chrome extension that renders an inline explanation next to your cursor the moment you highlight text. You never leave the page.

The tooltip runs in a shadow DOM, so it doesn't touch the host page's styles or layout. Explanations come from Claude Haiku 4.5 — fast enough that it feels like lookup, not generation.

The part I use most: every word in the response is itself clickable. Highlight a phrase in the explanation, and you get a new explanation. A rabbit-hole counter tracks how many hops deep you've gone. If you click through to 'philosophy' (which almost always happens), you get a shareable trail of the path you took.

Two other things worth knowing:

The globe icon re-answers the query enriched with Brave Search results — useful when the topic is recent or the base explanation feels thin. Source chips are clickable.

Zero telemetry, no intermediary server. Your API key lives in chrome.storage.sync (encrypted) and requests go directly from your browser to api.anthropic.com and api.search.brave.com. Nothing touches my infrastructure.

// The extension talks directly to Anthropic — no proxy, no logging:
const response = await fetch('https://api.anthropic.com/v1/messages', {
  headers: { 'x-api-key': userApiKey, ... },
  body: JSON.stringify({ model: 'claude-haiku-4-5', messages: [...] })
});
Enter fullscreen mode Exit fullscreen mode

Bring your own Anthropic key. Install, paste key, highlight something.

https://github.com/robertnowell/rabbitholes

Top comments (0)