All computation runs locally in the browser, with20+ tools

A next-generation online JSON workbench

Handle data tasks in one place. Sensitive data never goes to a server—everything runs locally on your device.

Why do developers prefer native in-browser data tools?

We handle JSON constantly while debugging APIs, reading logs, and editing config files. Traditional online sites often send content to a backend, which risks leaks and adds latency. Here everything is computed in the browser as a fully local workbench.

1

Zero server round-trips, maximum privacy

Whether you paste a production JSON payload or decode a JWT that contains auth claims, all work runs in the current browser memory. Refresh or close the tab and the data is gone.

2

Full JSON5 compatibility

Copied code that includes // comments or trailing commas does not need a manual cleanup first. The JSON5 engine can parse single and double quotes, then convert to RFC-compliant standard JSON in one click.

3

Compare and generate complex structures with ease

Highlight Diffs between two configs the way you would in Git. The code generator infers nested models and exports typed entities for Java, C#, Go, TypeScript, and more.

23
Local tools
20+
Code generation languages
0
Data uploaded
#data
Load via address bar

How to pick a tool by scenario

You do not need to open every feature. The four paths below cover the most common debugging needs.

Inspect structure and edit fields

Start with Format to beautify and validate. For deep nesting, switch to Tree to expand and collapse. For timestamps, color values, and links, use Field detection to preview them.

Pull data out of a large JSON document

Use JSONPath to write $.. and filter expressions. Queries are read-only and do not change the original. Useful for extracting one nested list from an API response.

Two configs do not match

Diff to inspect semantic differences. To combine them into one document, use Merge for deep overlay or array merge. Before comparing, you can Sort by key

Get started in three steps

The home page is for choosing a tool. Real editing happens on a dedicated workbench so the catalog and the input box do not compete for the same screen.

01

Open a tool from the catalog

Filter with the search box for JWT, Diff, YAML, and similar keywords, or click a card to open that workbench.

02

Paste, load via URL, or fetch remote data

Paste text into the editor. You can also load via #data={...} , or #url= fetch public JSON over the current network.

03

Copy the result; closing the tab clears it

Format, convert, and decode all run in the current tab’s memory. After you refresh or close the page, nothing remains on a server.

Advanced: pass data in the address bar

The hash is written after # , not a question mark. For example json-format.html#data={"name":"Ada"} . After it is read, it is cleared from the address bar so the payload is not left in history. For a full-screen layout, use ?fullscreen

What JSON5 relaxes compared with standard JSON

Content copied from a repo or config file often includes comments and trailing commas. Standard JSON.parse fails immediately. The JSON5 tool can parse it leniently, then output RFC-compliant text.

Comments

Standard JSON Not allowed

JSON5 Single-line // and multi-line /* */

Keys

Standard JSON Must use double quotes

JSON5 Unquoted keys and Unicode are allowed

Strings

Standard JSON Double quotes only

JSON5 Single quotes and multi-line continuation

Trailing commas

Standard JSON Not allowed

JSON5 Allowed in objects and arrays

Numbers

Standard JSON Decimal

JSON5 Hexadecimal, .5 / 5.、Infinity、NaN

How JWT is split in the browser

JWT decoder Splits Header / Payload / signature per RFC 7519. The token is never sent to a server. This version decodes locally and maps claim fields. It does not bring a private key into the page to verify signatures.

Common Payload claims

iss Issuer
sub Subject / user identifier
aud Audience
exp Expiration time
nbf Not-before time
iat Issued-at time
jti ID, used to prevent replay

Local decode

When to use local decode

  • Debug a login session and check exp / sub
  • Inspect custom claims while the token stays in the browser
  • Keep production signature verification on the backend. Do not put secrets in a web page.

If an integer ID is very large, watch JavaScript number precision. Compare against the raw Payload string instead of relying only on the converted Number.

Open the JWT decoder workbench

One sample JSON, many language entities

Code generation infers types from nested objects and arrays, then exports interfaces, structs, or data classes. Useful when you already have an API response and still need frontend or backend models.

TypeScriptJavaScriptJavaC# GoRustPythonKotlin SwiftDartPHPRuby ScalaC++Objective-CFlow HaskellElmCrystalPike

Developer notes

Short posts that put the tools into real workflows. Open the full blog when you need a deeper guide.

Guide and FAQ

How do I import data quickly for formatting?

Open the tool from the home page, then paste text on the workbench. You can also append a hash parameter to the workbench URL, for example json-format.html#data={"key":"value"} . After it is read, the address-bar parameter is cleared and the text is formatted. For a remote file, use #url=...

How do YAML conversion and JSON Schema validation work?

YAML conversion syncs both directions in the browser. The Schema tool flags missing required fields and type errors per the spec. JWT currently only decodes Header / Payload and never sends the token to a server.

Is data uploaded?

No. Parsing, conversion, and JWT decoding all happen in the current tab. Close or refresh the page and the in-memory content is gone.

Why are home and workbench separate?

The catalog is for browsing and searching every tool. The workbench is for editing. They do not share one screen, so scrolling will not push the input out of view or squeeze a long list against the editor.

Which formats can I convert?

Currently YAML, XML, CSV, Excel, GET query parameters, JSON Schema, and GraphQL. Cookie strings can also become JSON objects. Conversion is local as well.

Will large files freeze the page?

Work happens in your browser, so speed depends on the device and JSON size. For several MB, first decide whether you really need to paste the whole document. Tree view and JSONPath are better when you only need a slice.