MyJSON
Query playground

Real jq, right in your browser.

Run actual jq 1.8 — the canonical engine, compiled to WebAssembly — to transform and reshape JSON. Live results as you type, a snippet library for the common patterns, and a raw-output toggle. Nothing is uploaded.

Runs entirely in your browser

The real jq, not a subset

Genuine jq 1.8 compiled to WASM — pipes, select, map, group_by, string interpolation, the whole language. Not a partial reimplementation.

Transform, don't just extract

JSONPath reads values; jq reshapes them. Build new objects, filter, group, and aggregate. Pick the right tab for the job.

Snippets + raw output

Common filters one click away (.[] | select(.active), group_by, map). Toggle --raw-output to emit strings without quotes.

Fully local & private

jq runs as WebAssembly embedded in the page — no upload, no server, no network. Open DevTools and watch: zero requests.

FAQ

Is this the real jq?
Yes — it's jq 1.8, the canonical C implementation compiled to WebAssembly via jq-wasm. Expressions behave exactly like the jq CLI.
Does my JSON get uploaded?
No. The jq engine is WebAssembly embedded in the page — it runs entirely on your device. Open your browser's Network tab and run a query: you'll see zero requests. This is the same privacy guarantee as the rest of MyJSON.
jq vs JSONPath — which should I use?
JSONPath (also in the Query view) is for reading/extracting values. jq is for transforming — reshaping objects, filtering, grouping, aggregating. If you're building a new shape from the input, use jq.
What's the raw-output toggle?
jq's --raw-output (-r): when a result is a string, emit it without the surrounding quotes — handy for piping values out as plain text.
Is there a size limit?
Large documents are handed to a background Web Worker so the editor stays responsive. Very large inputs will be slower (jq runs in WASM), but it won't freeze the page.

Related tools