A CLI tool that converts between YAML, TOML, JSON, and HCL while preserving map order.
yj is a command-line interface (CLI) tool that converts data between YAML, TOML, JSON, and HCL formats. It solves the problem of inconsistent key ordering during conversions, ensuring that map structures remain predictable and human-readable across different serialization formats.
Developers, DevOps engineers, and system administrators who work with multiple configuration formats and need reliable, order-preserving conversions for scripting, automation, or data processing.
Developers choose yj for its strict preservation of map order, support for modern format versions, and simplicity as a single-binary CLI tool, making it more reliable than ad-hoc conversion scripts or other tools that may lose structural details.
CLI - Convert between YAML, TOML, JSON, and HCL. Preserves map order.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Maintains original key order across conversions, crucial for readability and consistency in version-controlled files, as emphasized in the project's philosophy.
Uses up-to-date specifications like YAML v1.2 and TOML v1.0.0, ensuring compatibility with modern standards for reliable conversions.
Supports stdin/stdout operations with various conversion flags, making it easy to integrate into shell scripts and pipelines for automation.
Provides a Go API for programmatic conversion into ordered Go objects, though it is noted as not stable in the README.
The README explicitly states the Go API should not be considered stable, which poses risks for production use in Go applications.
Only covers YAML, TOML, JSON, and HCL; lacks common alternatives like XML or CSV, requiring additional tools for broader conversion needs.
Focuses on data structure and key order but does not preserve comments, which can be important for documentation in configuration files.