A jq-like command-line tool for querying and transforming Markdown documents, optimized for LLM workflows and documentation management.
mq is a command-line tool written in Rust that processes Markdown using a syntax similar to jq. It enables users to slice, filter, map, and transform structured data within Markdown files, making it particularly valuable for LLM workflows, documentation management, and content analysis.
Developers and data engineers working with LLM workflows, documentation systems, or content pipelines that require programmatic manipulation of Markdown files.
Developers choose mq because it brings the powerful querying and transformation capabilities of jq to Markdown, a format that serves as the primary input for most language models. Its extensibility, IDE support, and suite of external tools offer a comprehensive ecosystem for Markdown processing.
A jq-like Markdown query language for command-line processing
Uses a syntax similar to jq, making it intuitive for developers already skilled in JSON querying to quickly adopt Markdown processing, as highlighted in the philosophy.
Includes VSCode extension, LSP support, and an experimental debugger (mq-dbg), providing robust tooling for development and debugging of queries.
Supports external subcommands and custom functions via ~/.mq/bin/, enabling seamless integration with tools like mq-conv for file conversions and AI workflows.
Specifically targets LLM workflows with built-in functions for slicing and transforming Markdown, the primary input format for language models, as emphasized in the README.
The README notes the project is under active development, risking breaking changes, incomplete features, and potential bugs that may affect production reliability.
As a newer tool, mq has a smaller ecosystem and community support, resulting in fewer third-party resources, examples, and integrations than established alternatives like jq.
Installation involves multiple methods (curl, cargo, binaries) and dependencies like external subcommands, which can be cumbersome for users seeking a simple, drop-in solution.
Command-line JSON processor
Render markdown on the CLI, with pizzazz! 💅🏻
Select, put and delete data from JSON, TOML, YAML, XML, INI, HCL, KDL and CSV files with a single tool. Also available as a go mod.
Preview GitHub README.md files locally before committing them.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.