jq Playground

Run real jq filters against a JSON document, in your browser. The filter bar sits above the panes, example filters are one click away, and jq errors are shown exactly as jq reports them. jq runs as WebAssembly in a Web Worker, so the page stays responsive and the document never leaves your tab.

Try:
JSON
Output
Results will appear here
Ready. Press Run filter.

jq 1.8.2 runs as WebAssembly in a Web Worker, on this device. The document is never uploaded, and the runtime loads only when this tool is opened.

How to use the jq Playground

  1. Paste a JSON document in the left pane.
  2. Type a jq filter in the bar above the panes, or start from one of the example chips.
  3. Click Run filter and read the result in the right pane. Raw output drops the quotes from string results, Compact prints each result on one line, and Sort keys orders object keys.

Example

The playground opens with the filter .tags[] run against this document.

{
  "name": "json-utils",
  "version": "1.0.0",
  "private": false,
  "tags": ["json", "tools"],
  "author": { "name": "Ada", "active": true },
  "score": 9.5,
  "notes": null
}

Frequently asked questions

Is this the real jq?

Yes. It is jq 1.8.2 compiled to WebAssembly, running in a Web Worker in your browser. Filters behave the same as the command line tool, including its error messages.

Why did my filter get stopped?

Runs are capped at 5 seconds so a runaway filter cannot freeze the page. If a filter times out, the worker restarts and the playground says so; simplify the filter and run it again.