/awesome-jq

A curated list of awesome jq tools and resources.

Awesome jq Awesome ./jq

A curated list of awesome things built with the JSON processor and turing-complete functional language jq.


Tools

jq-based JSON visualizers and explorers.

Command-line

  • jq (github) – jq itself, the command-line JSON processor.
  • faq – CLI program that processes BSON, Bencode, JSON, TOML, XML, YAML using libjq.
  • yq (and xq) – jq wrapper for YAML and XML documents.
  • ijqjq REPL with automatic variable assignment and global statements support.
  • jqsh – An interactive wrapper written in Go.
  • jiq – A visual command-line interactive JSON explorer with jq filters.
  • jqr – A pure-bash jq REPL.

Web

  • jiq-web (github) – jiq, but in a web page.
  • jq play (github) – A playground for jq with sharing capabilities.
  • jq-finder (github) – A multipanel, Finder-like, JSON explorer with jq filters instead of paths.
  • jqaasjq as a service, an open HTTP endpoint that executes jq queries.

Desktop

  • jqi (github) – The almighty jq processor wrapped in a graphical UI, for Mac OSX.

Extensions

  • atom-jq – Interactive jq playground inside the Atom editor.
  • jq-mode – A jq mode for Emacs.
  • vscode-jq – A jq extension for VS Code.
  • vscode-jq-playground – A jq playground notebook extension for VS Code.
  • :%!jq '.' is a Vim command that formats JSON in-place with jq (beware of any other tricks you might be thinking of).

Documentation

Readings about jq.

Core documentation

Good small specific tutorials

Code examples

Use Cases

Apps using jq in the wild.

  • sc – A lightweight soundcloud client, with a composable api, powered by jq.
  • jqt (github) – A web template engine that uses jq as expression language.
  • Vudash – A flexible and JSON-powered configurable open-source dashboard with support for a jq transformer.
  • datasette-jq – A plugin that enables jq queries on JSON columns on datasette deployments.
  • jtooljq-based JSON tools for a modern shell.
  • just-dashboard – A serverless app for implementing JSON-powered dashboards with JSON or YAML files (and jq filters as strings) serving as the only source of configuration.
  • bf.jq – A Brainfuck interpreter written in jq.
  • jq-voronoi – Implementation of Fortune’s algorithm to calculate Voronoi diagram on jq.

Libraries and tools for jq itself

Incrementing jq capabilities.

  • jqnpm (github) – A jq package manager that installs modules from GitHub and runs jq scripts.
  • JBOL – A collection of utility modules for jq (math, prelude, set, string etc.).
  • bigint, array, string and other librariesjq libraries from the author of jqnpm.

External libraries

Using jq from other languages.

  • jq-go – Golang cgo bindings for libjq (jqpipe-go is a CLI wrapper from the same people).
  • jq-webjq itself compiled to JavaScript with emscripten.
  • node-jq – A jq wrapper for Node.js.
  • ruby-jq – A jq wrapper for Ruby.
  • pyjq – An jq wrapper for Python.
  • php-ext-jq – PHP extension for jq.
  • java-jq – A jq wrapper for Java (jackson-jq is a Jackson extension).
  • jqr – R interface to jq.

Contribute

Please contribute! Open an issue or a PR and we’ll discuss it or merge it. If you’re opening a PR, please ensure all formatting is ok (if you’re in a hurry just open an issue).

License

CC0