Last 12 weeks · 1 commit
2 of 6 standards met
Adds a keyboard shortcut that copies the full JSON, so you don't have to click the toolbar button every time. The Copy JSON button now shows a small kbd hint next to its label so the shortcut is discoverable. The shortcut is ignored if you're typing in an input or holding a modifier key, so it won't get in the way of normal browser behavior. Closes #31 https://github.com/user-attachments/assets/d6b34e0f-294c-4951-a477-15891f06e43c
On a JSON page I usually pressed , then to grab the JSON quickly before this extension. With the extension active, two things go wrong: 1. Cmd+A also selects the toolbar at the top (Tree / Formatted / ...), not just the JSON. 2. After selecting, Cmd+C doesn't seem to copy anything. Screenshot of what gets selected with Cmd+A:** Solution I think we should add a keyboard shortcut to copy the JSON directly instead of having to click anything. Thoughts? Happy to send a PR for this.
Refs #20, #23 Summary Makes the viewer usable on JSON files with 100k+ nodes. Tested against a 124k-node Storyblok response. Builds on the search introduced in #20 (rewires it to a Web Worker, lazy init, detached panel) and adds the Cmd/Ctrl+F shortcut requested in #23. Core change: replaces the visible-row array + Map with an order-statistics tree ( + ). Toggle becomes O(depth), expand-all becomes a single O(n) bulk recompute. No more 100k-element splice or Map rebuild on every interaction. Other wins: DOM row pool: ~80 reusable `textContentinnerHTML#jv-content` so virtualization viewport actually bounds. Cursor regression fixed; custom-cursor scoped to data attribute. Tests**: Added vitest setup. 12 tests covering search behavior, virtualization, expansion state, stale-result handling. Test plan [ ] Load a small JSON (~hundreds of nodes) — tree, search, expand/collapse work as before. [ ] Load a 100k+ node JSON — initial render, level buttons, expand-all, scroll, search all stay responsive. [ ] Cmd/Ctrl+F opens search panel; Esc closes; Enter steps results. [ ] Hover keys — toolbar doesn't shift; path displays as floating overlay. [ ] Cursor: pointer over toggle arrows and buttons; custom-cursor mode still works.
It’s fantastic, and it’s been years since I last used a JSON Visualizer. I was using , but your extension is undeniably more convenient. You’ve probably already done it and are waiting for the Chrome Store’s approval by now. However, if you haven’t, I believe this extension belongs to the Chrome Store. I’m willing to contribute to the $5 registration fees as well. Thank you for creating this extension!
Summary Adds a Tab width selector (2, 4, 8) to the settings panel Updates tree indentation via the CSS variable on Re-renders the formatted view with the selected indentation on change Defaults to 4, persisted via Test plan [x] Open a JSON URL in the extension [x] Open the settings menu (⚙) and change the tab width [x] Verify tree indentation updates immediately [x] Reload the page and confirm the setting is remembered 🤖 Generated with Claude Code
Repository: wesbos/JSON-Alexander. Description: A really good JSON viewer browser Extension Stars: 930, Forks: 50. Primary language: TypeScript. Languages: TypeScript (73.6%), CSS (26.4%). License: MIT. Open PRs: 5, open issues: 11. Last activity: 2mo ago. Community health: 42%. Top contributors: wesbos, amruthpillai, jikanter, byCedric, derekkramer, vinnymac, broady.