Want to learn and master jq?

Join Exercism’s jq Track for access to 72 exercises grouped into 12 jq Concepts, with automatic analysis of your code and personal mentoring, all 100% free.

Explore concepts

About jq

echo '{"message": "Hello, World!"}' | \
jq -r '.message'

Key Features of jq


Widely used

jq has become a de-facto leader for transforming JSON data.

Small and fast

jq is available as a single binary with no dependencies, it's simple to install.

Generating JSON

Generate valid JSON using command-line options to avoid worrying about quoting edge cases.


Reporting from REST APIs: piping the output of curl into jq is a powerful addition to your toolbox.

CI tooling

You may already be using jq in your CI workflows: get more comfortable with jq to amplify its power.

A functional language

jq is a functional programming language: jq code is very concise and maintainable.

A taste of the concepts you'll cover

See all the concepts for jq

Get mentored the jq way

Every language has its own way of doing things. jq is no different. Our mentors will help you learn to think like a jq developer and how to write idiomatic code in jq. Once you've solved an exercise, submit it to our volunteer team, and they'll give you hints, ideas, and feedback on how to make it feel more like what you'd normally see in jq - they'll help you discover the things you don't know that you don't know.

Learn more about mentoring

Community-sourced jq exercises

The jq track on Exercism has 12 concepts and 72 exercises to help you write better code. Discover new exercises as you progress and get engrossed in learning new concepts and improving the way you currently write.

See all jq exercises

Get started with the jq track

The best part, it’s 100% free for everyone.