A performant, portable jq wrapper that consumes and outputs formats like XML and YAML using jq filters.
oq is a performant and portable wrapper for jq that extends its capabilities beyond JSON. It allows developers to use jq filters to transform data between various formats like XML, YAML, and JSON, solving the problem of processing non-JSON data with jq's powerful syntax.
Developers and system administrators who work with multiple data formats and want to leverage jq's filter language for transformations across XML, YAML, and JSON in scripts, pipelines, or applications.
Developers choose oq because it provides a unified way to apply jq's expressive filter syntax to non-JSON data, eliminating the need for separate tools or custom conversion scripts while maintaining high performance and portability.
A performant, and portable jq wrapper to facilitate the consumption and output of formats other than JSON; using jq filters to transform the data.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports input and output in JSON, XML, YAML, and other formats, enabling seamless transformation between them without separate tools, as evidenced by the examples in the README.
Leverages existing jq filters, allowing developers to apply the same expressive query syntax to non-JSON data, maintaining consistency across data formats.
Offers similar processing speed to jq for JSON data, with only slight overhead for format conversions, ensuring efficient operations in mixed-format environments.
Compiles to a single static binary available via package managers like Snapcraft and Homebrew, making it portable and simple to install across systems.
Requires jq to be installed separately for full functionality, adding setup complexity and potential version compatibility issues, especially when building from source.
Admits slightly longer execution times when converting to or from non-JSON formats, which can impact efficiency in data-heavy or real-time pipelines.
Programmatic integration is only available for Crystal projects, limiting its use as an embedded library in other programming ecosystems without workarounds.