Repolode
01mf02

01mf02/jaq

Клон jq на Rust, ориентированный на корректность, скорость и простоту; доступен как совместимый с jq CLI и как библиотека.

Open source альтернатива:jq

Звёзды
3,809
Форки
126
Открытые issues
24
Последний коммит
вчера

Что это?

jaq — клон инструмента обработки JSON jq, написанный на Rust. Он призван стать полноценной заменой jq в командной строке и при этом обеспечивать более предсказуемую реализацию языка jq. Кроме того, jaq поддерживает форматы данных YAML, CBOR, TOML и XML, которых нет в jq.

jaq выпускается в двух вариантах: программа командной строки jaq и библиотека jaq-core, которая позволяет компилировать и запускать программы jq из кода на Rust. jaq-core можно безопасно использовать в многопоточных средах. Благодаря трейту ValT библиотека также работает с произвольными типами данных, а не только с JSON.

По данным проекта, jaq запускается быстрее jq — это важно при обработке множества небольших файлов. В проект также входит сравнение производительности с jq и gojq. Безопасность ядра проверена аудитом, а набор тестов содержит более 500 тестов.

Ключевые возможности

  • 01Полноценная замена jq в командной строке
  • 02Поддержка входных форматов YAML, CBOR, TOML и XML
  • 03Библиотека jaq-core для запуска программ jq на Rust с безопасной работой в многопоточной среде
  • 04Поддержка пользовательских типов данных через трейт ValT
  • 05Быстрый запуск и сравнение производительности с jq и gojq
  • 06Ядро прошло аудит безопасности; проект покрыт более чем 500 тестами

Сценарии использования

  • Замена jq в shell-скриптах и конвейерах обработки JSON
  • Обработка большого количества небольших файлов, когда время запуска jq заметно влияет на общую производительность
  • Встраивание запросов в стиле jq в приложение на Rust

Быстрый старт

  1. 1

    Установите jaq с crates.io с помощью Cargo

    cargo install --locked jaq
  2. 2

    Установите jaq с помощью Homebrew на macOS или Linux

    brew install jaq
  3. 3

    Или скачайте бинарный файл для вашей платформы со страницы релизов

Что важно знать

  • jaq не защищает от исчерпания ресурсов, поэтому может неограниченно использовать время, память или пространство стека.
  • Некоторые особенности поведения jaq намеренно отличаются от jq, поэтому совместимость не гарантирована во всех случаях.

В подборках

Темы

Частые вопросы

Что такое jaq?
Клон jq на Rust, ориентированный на корректность, скорость и простоту; доступен как совместимый с jq CLI и как библиотека. jaq — клон инструмента обработки JSON jq, написанный на Rust. Он призван стать полноценной заменой jq в командной строке и при этом обеспечивать более предсказуемую реализацию языка jq. Кроме того, jaq поддерживает форматы данных YAML, CBOR, TOML и XML, которых нет в jq.
jaq можно использовать бесплатно? Какая у него лицензия?
jaq распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
jaq всё ещё поддерживается?
Активно поддерживается. Последний коммит в jaq — 21 окт. 2026 г..
Для чего можно использовать jaq?
Замена jq в shell-скриптах и конвейерах обработки JSON Обработка большого количества небольших файлов, когда время запуска jq заметно влияет на общую производительность Встраивание запросов в стиле jq в приложение на Rust
Как установить jaq?
Установите jaq с crates.io с помощью Cargo: cargo install --locked jaq Установите jaq с помощью Homebrew на macOS или Linux: brew install jaq Или скачайте бинарный файл для вашей платформы со страницы релизов
Где скачать jaq?
Исходный код и инструкции по установке — на GitHub: https://github.com/01mf02/jaq

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты