JSON Lens

Version 4 · JSON + Python dictionary support

FAQs

What formats can I paste?

Valid JSON and supported Python dictionary literals. The tool detects the format from the content, not just the filename. Python code and executable expressions are not supported.

Why does a valid Python dictionary fail JSON validation?

JSON requires double-quoted keys and strings and uses true, false, and null. Python dictionaries can use single quotes and True, False, and None. JSON Lens converts supported Python dictionaries automatically.

Does auto-correct change my original input?

No. It shows a suggested correction in the output. Review it before copying because repairs may infer missing values or structure.

Is my JSON uploaded to a server?

The tool processes documents in your browser and does not send the document contents to an application backend. Hosting providers may still receive ordinary page-request metadata.

Is my document saved?

No. Document content is kept in page memory. Your theme preference is stored locally on your device; closing or reloading the page discards the input.

Why does the tree stop expanding?

The tree is limited to 2,000 visible nodes. Fold branches to explore other sections. The formatted output includes the full successfully parsed document.

Can I resize or expand a panel?

Yes. Drag the divider on larger screens. Each panel also has a full-screen button. Press Escape or click Exit full screen to restore both panels.

Are Python tuples, sets, or function calls supported?

No. Python support covers dictionaries with quoted string keys, lists, strings, finite numbers, booleans, and None. It does not execute Python code.

Can I trust the output for exact financial values?

Review numeric values carefully. JavaScript numbers may round very large integers or high-precision decimals. This tool is designed for exploring structure, not exact numeric processing.

How can I report a problem?

Open Feedback and describe what happened. The page prepares a copyable message; direct submission is not configured. Use a small sanitized sample rather than confidential data.

Does Search change the exported JSON?

No. Search filters Tree View and highlights Pretty JSON. Download JSON and Copy JSON still include the complete parsed output.

Why are input and output line numbers different?

Formatting, conversion, or correction changes layout. Error locations refer to the original input, while the output has its own line numbering.

What does Copy path return?

A root-based property path such as $.companyOfficers[0].name. Keys with spaces or punctuation use quoted brackets. This is not a complete JSONPath query engine.

How does expand-to-depth work?

Root is depth zero. A 1-level selection opens root and leaves child containers folded. Search may open deeper ancestors to reveal matches. All levels remains subject to the 2,000 visible-node cap.

What happens to duplicate keys?

The last value is retained by parsing. A warning identifies repeated quoted keys within the same object and their original input lines. Keys reused in different objects are allowed.

What does the repair report show?

The raw original and repaired or converted region, from the first difference to the last. It appears before sorting and pretty formatting. Large excerpts are shortened. It is a review aid, not an exhaustive per-edit audit.

Does sorting change arrays or my input?

No. Only object keys in the output are sorted. Array sequence and your original input remain unchanged.

What is included in a downloaded file?

The current complete formatted output, including selected key sorting or accepted suggested repairs. Search filters and displayed line numbers are excluded.

Can I drag and drop a file?

Yes. Drop one .json or .txt file inside the input panel to load and visualize it. The file must be at most 2 MB. Unsupported, oversized, or multiple-file drops preserve your current input. Upload JSON is available as an alternative.