yq VS gojq

Compare yq vs gojq and see what are their differences.

yq

yq is a portable command-line YAML, JSON, XML, CSV, TOML and properties processor (by mikefarah)

gojq

Pure Go implementation of jq (by itchyny)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
yq gojq
66 31
10,736 3,074
- -
9.2 8.3
8 days ago 6 days ago
Go Go
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

yq

Posts with mentions or reviews of yq. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-25.

gojq

Posts with mentions or reviews of gojq. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-08.
  • To a Man with `Jq`, Everything Looks Like JSON
    7 projects | news.ycombinator.com | 8 Dec 2023
    Yeap i've talked to itchyny quite a lot about various changes https://github.com/itchyny/gojq/issues/153 and also upstreamed quite a lot https://github.com/itchyny/gojq/issues?q=author%3Awader like custom iterators (to allow eval, own iterators and "empty" functions), query marshalling (query rewrite tricks) and a bunch of small things and bug fixes. But the largest change to add a JQValue interface is quite complex, other changes like extended literals is also a bit tricky.

    Hmm weird list of changes for https://github.com/wader/gojq/compare/fq...itchyny:gojq:main but i guess it is because i haven't kept my main branch in sync. The fq branch should be based on latest gojq/main as of now. I usually try to rebase as quick as possible.

    Let me know if you have any other questions or want to help out! maybe email etc as i usually don't check HN comments replies that often :)

  • Make JSON Greppable
    9 projects | news.ycombinator.com | 3 Dec 2023
  • Jaq – A jq clone focused on correctness, speed, and simplicity
    28 projects | news.ycombinator.com | 29 Nov 2023
  • jq 1.7 Released
    33 projects | news.ycombinator.com | 6 Sep 2023
    gojq has support for yaml input (via a very annoying argument name) and also has the golang property of "curl binary; chmod; profit": https://github.com/itchyny/gojq#difference-to-jq

    It's error reporting is also clang-vs-gcc level wizardry, and I often use it to get a helpful message instead of "ENOWORKY" from jq (I haven't tried 1.7 yet, so it could be better for all I know)

  • First release of jq in 5 years
    4 projects | news.ycombinator.com | 31 Jul 2023
    Some competition for https://github.com/itchyny/gojq. I had read somewhere that it was faster than jq - no idea if that's still the case.
  • Library to analyze an arbitrary JSON string
    5 projects | /r/golang | 1 May 2023
    JQ has a go implementation usable as a library I see. The project looks fairly active https://github.com/itchyny/gojq
  • Miller: Like Awk, sed, cut, join, and sort for CSV, TSV, and tabular JSON
    11 projects | news.ycombinator.com | 16 Mar 2023
    I've been getting a lot of mileage out of https://github.com/itchyny/gojq#readme recently due to two things: its vastly superior error messages and the (regrettably verbose) `--yaml-input` option

    I also have https://github.com/01mf02/jaq#readme installed but just haven't needed it

  • Yq is a portable yq: command-line YAML, JSON, XML, CSV and properties processor
    11 projects | news.ycombinator.com | 4 Feb 2023
    I use gojq with --yaml-input or --yaml-output and flip back and forth between JSON and YAML promiscuously and have 100% jq UI compat, which helps because I use jq a lot. First thing I looked at on yq is '-s', which is 'slurp' for jq. Slightly altered semantics would just trip me up, and it seems like you can make a nearly straight bijection between YAML and jq so you can just do exactly the same things with either one (with some minor exceptions.)

    https://github.com/itchyny/gojq

  • Looking for programming languages created with Go
    23 projects | /r/golang | 6 Nov 2022
    jq https://github.com/itchyny/gojq
  • Oracle DB support in Benthos
    8 projects | /r/golang | 7 Oct 2022
    github.com/itchyny/gojq -> similar to goawk, except JQ this time

What are some alternatives?

When comparing yq and gojq you can also consider the following projects:

yq - Command-line YAML, XML, TOML processor - jq wrapper for YAML/XML/TOML documents

jq - Command-line JSON processor [Moved to: https://github.com/jqlang/jq]

jq - Command-line JSON processor

yaml.nvim - 🍒 YAML toolkit for Neovim users

counsel-jq - Traverse complex JSON and YAML structures with live feedback

csvq - SQL-like query language for csv

jfq - JSONata on the command line

oq - A performant, and portable jq wrapper to facilitate the consumption and output of formats other than JSON; using jq filters to transform the data.

zed - A novel data lake based on super-structured data

miller - Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON

gio-example - Mirror of the Gio examples repository (https://git.sr.ht/~eliasnaur/gio-example)