Local-first. No upload. No tracking.
Birdor JSON Lens
Local-first JSON reader
Docs

Entry points, reader behavior, and boundaries.

A compact map of what the extension does when JSON appears in a tab, clipboard, selection, or local file.

Current page JSONScratchpadSelected textLocal `.json` files
Reader contract

The docs describe how JSON enters the reader, what the reader does locally, and where the product deliberately stops.

Section 01

Primary surfaces

Birdor JSON Lens starts from concrete browser surfaces: current-page JSON after a popup click, pasted snippets, selected webpage text, and local `.json` files opened in the Scratchpad.

  • Render current-page JSON only after the user clicks Render current page
  • Paste and inspect copied payloads in the local Scratchpad
  • Open selected text through explicit context-menu actions
  • Drop local `.json` files into the same reading workflow
Section 02

Reading and debugging workflows

Inside those surfaces, JSON Lens focuses on readable structure, path copy, invalid-input diagnosis, large-document safety, and local comparison rather than network capture.

  • Tree / Pretty / Raw views
  • Search across keys, values, and paths
  • Copy value, key, dot path, JSONPath, jq path, lodash path, and subtree
  • Smart hints for timestamps, URLs, JWTs, UUIDs, and colors
  • JSON string lens for nested escaped JSON
  • Large JSON safe mode with progressive rendering
  • Scratchpad compare mode for two local payloads
Section 03

Path copy contract

Path copy is treated as a reader feature, not a decorative menu. The selected node can produce formats used in code review notes, jq commands, test fixtures, and bug reports.

  • Dot path for quick human-readable notes
  • JSONPath for assertions and inspection tools
  • jq path for command-line filtering
  • Lodash path for JavaScript codebases
  • Subtree copy when the useful object is buried inside a larger response
Section 04

Failure states

The Scratchpad is expected to show broken input plainly. It should not silently rewrite payloads or hide parse errors behind a generic failed state.

  • Invalid JSON diagnostics stay near the pasted body
  • Escaped JSON strings can be opened as nested readable JSON
  • Large payload handling prefers safe progressive reveal over freezing the reader
Section 05

Scope boundaries

The product is intentionally narrow. It is a local-first JSON reading lens, not an API client, request monitor, request-history tool, cloud sync service, or account-based workspace.

  • No request replay
  • No fetch or XHR monitoring
  • No browsing-history capture
  • No account requirement
  • No JSON upload
Section 06

Current acceptance status

As of May 22, 2026, the checked-in acceptance status records successful install, build, verify, and Chrome UI smoke coverage for the extension surfaces that feed this landing page.