Developer tools

JSON viewer

Explore JSON as an expandable tree, search keys and values, inspect exact numbers, copy JSON Pointers and download selected values locally.

JSON source

Open a JSON file or drop it here

Paste JSON, open a file or try the example.

Your tree will appear here. Large numbers and duplicate properties stay intact.

Explore without losing precision

Open an object or array using its disclosure arrow. Choose Inspect for a container, or choose a scalar value, to see its exact JSON and path. Numbers retain their literal spelling, including integers beyond JavaScript’s safe range, decimal zeros and exponent notation. Search finds matching keys, scalar values and paths without executing regular expressions.

Copy a value or its location

Copy value and Download selected JSON use the complete selected JSON, including its quotes, escapes and nested contents. JSON Pointer identifies a location: /team/0/name selects the name in the first team entry. A slash within a property name becomes ~1 and a tilde becomes ~0. The root uses an empty pointer. Duplicate properties are all retained; path copying is disabled for ambiguous duplicate-key paths and their descendants.

Files, recovery and downloads

Original downloads preserve imported UTF-8 BOM and line endings until editing. Formatted downloads use two-space indentation and a final LF, retaining number literals, property order, duplicates and string escapes. Example, Clear and successful import save one Undo step including source, selected value, expanded containers and search. Ordinary source edits invalidate the view. Invalid UTF-8 and oversized imports preserve accepted work; syntactically invalid JSON stays editable with line and column feedback.

Limits and privacy

Processing stays in this browser with no automatic storage or uploads. Maximum input is 256 KiB, 20,000 values, 100 container levels and 4 MiB of combined path text. Each container and search page shows at most 80 entries at a time; downloads retain the complete content. A local worker has a ten-second cancellation deadline. JSON comments and trailing commas are rejected. Escaped isolated Unicode surrogates remain in the exact JSON and produce an interoperability notice.