JavaScript MIT

groq-cli

Run GROQ in your command line

S

sanity-io

Dernière activité 25 sept. 2026
sanity-io/groq-cli

237

étoiles

14

forks

14

issues ouvertes

groqjsonjson-apijson-parserquery-languagesanity-io

Ce README est souvent en anglais.

groq-cli

Currently in alpha.

Easy wrangling of JSON documents with GROQ in the command line.

The CLI tool consumes both JSON and NDJSON) documents. You can pass in data from a local file, or from piping to standard input.

Read the announcement blog post, and the getting started guide.

Install

npm install --global groq-cli

Requirements

This CLI requires Node v18 or later.

Usage

$ groq --help
  Run GROQ in the command line

  Usage
    $ groq '*[<filter>]{<projection>}'
    # Remember to alternate quotation marks inside of the query

  Options
    -i, --input   One of: ndjson, json, null
    -o, --output  One of: ndjson, json, pretty, type-nodes
    -p, --pretty  Shortcut for --output=pretty
    -n, --ndjson  Shortcut for --input=ndjson --output=ndjson
    -s, --schema  Path to a schema file, only required when output is set to "type-nodes"

  Input formats
    json      Reads a JSON object from stdin.
    ndjson    Reads a JSON stream from stdin.
    null      Reads nothing.

  Output formats
    json      Formats the output as JSON.
    pretty    Formats the output as pretty JSON.
    ndjson    Streams the result as NDJSON.

  Examples
    # Query data in a file
    $ cat blog.json | groq 'count(posts)'

    # Query data in a NDJSON file
    $ cat blog.ndjson | groq --input ndjson '*[_type == "post"]{title}'

    # Query JSON data from an URL
    $ curl -s https://jsonplaceholder.typicode.com/todos | groq  --pretty '*[completed == false]{title}'

Similar tools

GROQ-cli isn't the only tool to work with JSON data in the command line. If it doesn't do exactly what you need, you can check out these other tools that might help you:

  • jq — a lightweight and flexible command-line JSON processor.
  • gron - Make JSON greppable!

License

MIT – Copyright 2019–present Sanity Inc.

Projets similaires

JavaScript implementation of GROQ, the query language for JSON

TypeScriptapigroqjson
Ssanity-io
344 étoiles26

Specification for GROQ - The Query Language for JSON

JavaScriptjsonjson-dataquery-language
Ssanity-io
451 étoiles17

Command-line JSON processor

Cjq
Jjqlang
35,7 k étoiles3,1 k