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. (by Blacksmoke16)
yq
yq is a portable command-line YAML, JSON, XML, CSV, TOML and properties processor (by mikefarah)
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.
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.
oq
Posts with mentions or reviews of oq.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-02-27.
- Oq: Transform XML and YAML data using jq filters
- Oq: A jq wrapper for handling YAML, XML, JSON, etc. with jq filters
-
oq - A portable/performant jq wrapper Part 2
oq (1.2.0) - Built locally with Crystal 0.36.1 via shards build --production --release
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 2025-05-21.
-
Hacking with mdBook
I strongly recommend keeping it in your toolbox, along with other command-line power tools, such as jq, yq, and mustache. No need to mention Nix, right?
- Make Ubuntu packages 90% faster by rebuilding them
-
Overengineer your CV
Then the content of the YAML is passed to a program called yq which takes a jq-filter as an input and returns a json with the filter applied to it as an output.
-
Step-by-Step Guide: Deploying a Static Web Application in OpenShift Using a Custom S2I Builder Image
curl -O --location https://github.com/mikefarah/yq/releases/download/2.4.1/yq_linux_amd64 sudo mv yq_linux_amd64 /usr/bin/yq sudo chmod +x /usr/bin/yq
- JSON5 – JSON for Humans
-
Setting up a local Kubernetes environment with Multipass and bridge networking
# Install yq sudo wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O /usr/bin/yq \ && sudo chmod +x /usr/bin/yq # Update netplan configuration sudo cp /etc/netplan/50-cloud-init.yaml /etc/netplan/50-cloud-init.yaml.old sudo yq '.network.ethernets.default.match.macaddress as $default | .network.ethernets.extra0.match.macaddress as $extra | .network.ethernets.default.match.macaddress = $extra | .network.ethernets.extra0.match.macaddress = $default' \ /etc/netplan/50-cloud-init.yaml.old | sudo tee /etc/netplan/50-cloud-init.yaml # Restart the node sudo reboot
- TomWright/dasel: Select, put and delete data from JSON, TOML, YAML, XML and CSV
-
Show HN: Flatito, grep for YAML and JSON files
What I often use to just get the full key paths is yq (https://github.com/mikefarah/yq), piping into grep when necessary
yq -o=props
- K8s Service Meshes: The Bill Comes Due
- Using facts and the GitHub API in Ansible
What are some alternatives?
When comparing oq and yq you can also consider the following projects:
terminimal - A tiny CLI toolkit for building terminal apps for humans.
yq - Command-line YAML, XML, TOML processor - jq wrapper for YAML/XML/TOML documents
cride - A light CLI text editor/IDE written in Crystal
miller - Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON
tallboy - Declarative API for drawing unicode/ascii character tables in crystal lang
jq - Command-line JSON processor