React Click-to-source
Reads React fibers (_debugSource on ≤18, _debugStack on 19+), decodes source maps client-side, and launches your editor at the exact line via cursor:// or vscode://.
A Chrome extension that turns any React dev server into a click-to-source surface. No babel plugin. No vite plugin. No REACT_EDITOR. Nothing added to your repo.
Hold ⌥. Click. You're in Cursor on the exact line.
That's it. Verified on React 19 + Next.js 16 + Turbopack.
A 30-second walkthrough: install, configure, hold the modifier, click.
Click-to-source for React. Design inspector for everything else.
Reads React fibers (_debugSource on ≤18, _debugStack on 19+), decodes source maps client-side, and launches your editor at the exact line via cursor:// or vscode://.
Hover and Tuxx pops a panel with typography, box, colors and classes — straight from getComputedStyle(). Works on React, Vue, Svelte, plain HTML, anything.
┌─────────────────────────────────┐ │ <button> · PrimaryButton │ │ 240 × 40 │ │ │ │ TYPOGRAPHY │ │ font Inter 14px · 500 │ │ line 21px · 0.02em │ │ │ │ BOX │ │ padding 8px 16px │ │ radius 6px │ │ border 1px solid #2a2d34 │ │ │ │ COLORS │ │ #ff5500 · background │ │ #ffffff · text │ │ │ │ CLASSES │ │ btn btn-primary text-white │ └─────────────────────────────────┘
Every existing tool wants a Babel/SWC/Vite plugin shoved into every codebase. Tuxx reads React fibers in the browser. Your repo stays clean.
| click-to-react-component | react-dev-inspector | Next.js DevTools | Tuxx, Fetch! | |
|---|---|---|---|---|
| Requires repo install | Yes | Yes | Built-in | No |
Works on React 19 (_debugStack) | ✗ | partial | partial | ✓ |
| Turbopack indexed source maps | ✗ | ✗ | partial | ✓ |
| Multi-repo from one install | n/a | n/a | ✗ | ✓ |
Bypasses REACT_EDITOR / cursor CLI | ✗ | ✗ | ✗ | ✓ |
Click-to-source works wherever React's JSX dev transform emits _debugSource / _debugStack. The design inspector works anywhere.
| Status | Notes | |
|---|---|---|
| React 18 + Next.js | verified | _debugSource direct path |
| React 19 + Next.js (webpack) | verified | _debugStack + client-side source-map decoder |
| React 19 + Next.js (Turbopack) | verified | Indexed source maps, turbopack:// paths |
| Next.js 16 | verified | Turbopack by default; webpack also works |
| Vite + React | should work | Same fiber API; standard source maps. Untested by maintainer. |
| Vue / Svelte / Solid | not yet | Different runtime — requires per-framework adapters. |
| Status | |
|---|---|
| Chrome | verified |
| Brave / Arc / Edge / Vivaldi / Opera | should work — same Chromium + MV3 |
| Firefox | not yet — different MAIN-world model |
| Safari | not yet — different extension format |
No — by design. Production React builds strip _debugSource, _debugStack, and the __reactFiber$xxx DOM keys. Tuxx silently does nothing on prod. The extension is also scoped to http://localhost/* and http://127.0.0.1/* at the manifest level.
Never. No Babel plugin, no Vite plugin, no SWC config, no REACT_EDITOR environment variable. The extension reads React's existing fiber metadata in your browser and decodes source maps client-side.
None. Tuxx ships no analytics, no telemetry, no tracking. It cannot make network requests outside of localhost. See the privacy policy for the full breakdown.
So your normal clicks still work. Holding ⌥ (or your configured key) tells Tuxx "this click is for me, not the app." Release the key and the page behaves normally.
Should — they all use the standard JSX dev transform that emits the fiber metadata Tuxx reads. Maintainer hasn't personally tested them, so the compatibility table lists them as "should work." If you try it, open an issue with the result.
Yes. Open the options page and pick vscode:// or vscode-insiders:// from the editor dropdown. Any editor with a <scheme>://file/<path>:<line>:<col> handler works.
Free, MIT-licensed, zero dependencies. Ship cleaner clicks today.