Skip to content
Oeiuwq Faith Blog OpenSource Porfolio

dflemstr/rq

Record Query - A tool for doing record analysis and transformation

dflemstr/rq.json
{
"createdAt": "2016-02-20T22:45:34Z",
"defaultBranch": "master",
"description": "Record Query - A tool for doing record analysis and transformation",
"fullName": "dflemstr/rq",
"homepage": "",
"language": "Rust",
"name": "rq",
"pushedAt": "2023-12-21T18:27:16Z",
"stargazersCount": 2294,
"topics": [
"avro",
"command-line-tool",
"javascript",
"json",
"lodash",
"messagepack",
"protobuf",
"rust",
"toml",
"yaml"
],
"updatedAt": "2025-11-23T01:21:02Z",
"url": "https://github.com/dflemstr/rq"
}

NOTE: rq is in very low maintenance mode as my day job is taking up a lot of my time. I will try my best to merge pull requests but will not drive active development of this crate.

NOTE: rq no longer ships with query support and a Javascript engine is not included; instead, it focuses exclusively on format transformation. You can still pipe into a runtime like node.js if you need Javascript evaluation. Please see this issue to discuss introducing a new query language.

This is the home of the tool called rq (record query). It’s a tool that’s used for performing queries on streams of records in various formats.

The goal is to make ad-hoc exploration of data sets easy without having to use more heavy-weight tools like SQL/MapReduce/custom programs. rq fills a similar niche as tools like awk or sed, but works with structured (record) data instead of text.

It was created with love out of the best parts of Rust, and is distributed as a dependency-free binary on many operating systems and architectures.

  • [Installation]!(doc/installation.md) — How to install rq.
  • [Tutorial]!(doc/tutorial.md) — Learn rq from scratch.
  • [Protobuf]!(doc/protobuf.md) — Configure Protobuf specifics.
  • [Development]!(CONTRIBUTING.md) — Contribute to rq.
FormatReadWrite
Apache Avro✔️✔️
CBOR✔️✔️
JSON✔️✔️
MessagePack✔️✔️
Google Protocol Buffers✔️✖️
YAML✔️✔️
TOML✔️✔️
Raw (plain text)✔️✔️
CSV✔️✔️