jqweb

cat data.json | jqweb -O

Turn JSON into an interactive webpage with one pipe.

It opens locally in your browser as a navigable tree with instant text search and jq-style queries—no upload and no server to configure.

Install jqweb View on GitHub
zsh — 80×24
$ kubectl get pods -o json | jqweb -O
jqweb: serving on http://127.0.0.1:52748/ (Ctrl-C to stop)
127.0.0.1:52748
Open ↗

This is the page that command opens, running live. Try typing .items[].spec in its search box.

Features

Search

The search box filters keys and values as you type, and also accepts a jq-style path. The copy button on each line puts that line’s path on the clipboard, so a copied path can be pasted straight back into the box.

jq queries

The search box also runs jq queries. It supports a subset of jq: paths, slices, pipes, comparisons, if/then/else, array and object construction, and around 100 builtins. Key names are suggested as you type.

Filtering on a value

Each line has a button that fills the search box with a query built from that line. It also lists other queries the line could match, with the number of results each returns.


Install

The macOS builds are signed and notarized. For prebuilt binaries, see the README.

$ brew install zafnz/tap/jqweb

macOS and Linux.


Usage

kubectl get pods -o json | jqweb -O Open the page in your default browser.
jqweb -OC myfile.json Return to the prompt and serve in the background until the last tab showing the page is closed.
kubectl get pods -o json | jqweb -o k8s.html Write a self-contained HTML file for offline viewing.

Full usage in the README