Flatten nested JSON to readable lines. Filter by path. Reconstruct perfectly. Built for the terminal, powered by Bun.
Every leaf value in your JSON gets its own line with a full, grep-able path.
No install needed. Paste any JSON and explore — a faithful simulation of the real CLI core.
Everything you need. Nothing you don't. Zero learning curve.
--filter matches paths only — never accidentally matches values. Safe and precise.
Flatten and unflatten are perfect inverses. Your JSON comes back exactly as it went in.
Pipe it into anything. Works with curl, cat, grep, awk — your whole toolchain.
Published through npm, designed to run anywhere Bun is installed — macOS, Linux, or Windows. Small bundle, no heavy dependencies.
Free forever. Built in public from day one.
jray gives you the best of both worlds — without forcing you to learn a query language.
| Capability | jray | jq | gron |
|---|---|---|---|
| Flatten JSON to lines | ✓ | — | ✓ |
| Reconstruct JSON | ✓ | — | ✓ |
| Filter by path | ✓ | ✓ | — |
| Extract subtree as JSON | ✓ | ✓ | — |
| No query language needed | ✓ | — | ✓ |
| TypeScript / modern codebase | ✓ | — | — |
Requires Bun. Works on macOS, Linux, and Windows.