Alternatives to gojq

Process JSON with a Go implementation of jq. The listings below can replace it for an important use case. Each note says what changes if you switch.

The original

Replacements

Listings that take over the same core job as gojq.

  • jq

    The command-line JSON processor: slice, filter, map and transform structured data the way sed and awk handle text.

    jq is the original C implementation with zero runtime dependencies and packages in every major distribution, but it cannot be embedded as a Go library.

  • jaq

    Run jq-style queries through a Rust command-line tool and library.

    jaq is a Rust command-line tool and library for jq-style queries with additional data formats, though some behavior differs from jq.

  • yq

    Command-line processor for YAML, JSON, XML, CSV and TOML.

    yq applies jq-like syntax to YAML, JSON, XML, CSV and TOML, but its expression syntax differs from jq in places.

  • Dasel

    Query and update structured files through a consistent command syntax.

    Dasel queries and updates several structured formats through its own consistent command syntax instead of the jq language.

Similar software

Related functionality, not a direct replacement.