What it does
jq is a small command-line program for working with JSON. It reads JSON from a file or standard input and applies a filter that can select fields, iterate arrays or transform values. The official repository provides binaries and a Docker image, while the manual documents the filter language. It is useful in scripts and terminals when a full application or database would be unnecessary.
For a quick inspection, install the official binary and use a filter to select a field from a JSON file. For example, jq '.version' package.json prints the top-level version value when that file contains valid JSON. Filters can be composed to select nested objects, map over arrays or reshape the result before passing it to another command. The repository offers prebuilt binaries, a Docker image and instructions for building from source. This keeps jq convenient in a local shell or CI job, but it is a command-line tool rather than a graphical data browser. A reader who needs repeated inspection can save a filter in a script; for a one-off task, a short expression is often enough. The project repository lists a 1.8.2 release with bug and security fixes, and the COPYING file grants use under the MIT license while licensing documentation separately. Read the project license if redistributing binaries or copying its documentation.
Strengths
- Processes JSON in a terminal without a runtime dependency.
- Prebuilt executables and a Docker image are documented in the official repository.
- Filters can extract, map, and transform structured JSON values.
Watch out for
- Requires a command-line workflow and a valid JSON input file or stream.
- The software and its documentation have different license terms.
Best for
- Extracting selected fields from JSON in shell scripts
- Transforming structured command output before passing it to another tool
Sources
- jq (Oct 25, 2026)
- Releases · jqlang/jq (Oct 25, 2026)
- jq license and notices (Oct 25, 2026)
