macOS
brew install yjlocal Homebrew formula metadata
sudo port install yjMacPorts ports tree · textproc/yj/Portfile · source: api.github.com
brew
CLI to convert between YAML, TOML, JSON and HCL. Version 5.1.0 via Homebrew; verified from local package data.
install
brew install yjlocal Homebrew formula metadata
sudo port install yjMacPorts ports tree · textproc/yj/Portfile · source: api.github.com
sudo apk add yjAlpine Linux edge package indexes · yj · source: dl-cdn.alpinelinux.org
nix profile install nixpkgs#yjnixpkgs package indexes · pkgs/by-name/yj/yj/package.nix · source: api.github.com
overview
CLI to convert between YAML, TOML, JSON and HCL
history
yj is a Go command-line converter between YAML, TOML, JSON, and HCL. Its defining package-nerd feature is preserving map order across conversions, a detail that matters when config files need to remain readable or diffable.
The project was published in March 2017 and reached v1.0 immediately. Its release line then expanded through v2.0 in 2018, v3 and v4 in 2019, and v5 in 2020-2022 as the supported format libraries and conversion semantics matured.
The v5.0.0 release notes mark the major turning point: conversions between all formats began preserving map order, TOML moved to a 1.0 release candidate, YAML moved to yaml.v3, and the maintainer noted that order preservation required manually parsing library ASTs. v5.1.0 updated TOML support to TOML 1.0.0 and adjusted the Go module path.
yj is adopted by users who need shell-friendly data-format conversion without writing one-off scripts. The README documents Homebrew installation, release binaries for macOS, Linux, and Windows, a Docker image, and use as Go packages for converting data formats into ordered Go objects.
The yj CLI reads from stdin and uses compact two-letter flags to choose source and destination formats, such as YAML to JSON, JSON to YAML, TOML to HCL, or HCL to JSON. It also includes options for JSON indentation, HTML escaping, YAML key parsing, and NaN/Inf handling.
yj matters because it lives in the config-file conversion niche where jq, yq, hcl tools, and ad hoc scripts overlap. For package catalogs, it is a clean example of a small executable that bridges infrastructure formats rather than owning one format ecosystem.
Order preservation is its standout detail: many converters can translate syntax, but fewer try to preserve human-authored map order across YAML, TOML, JSON, and HCL.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
yj | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/sclevine/yj
install metadata
| Package key | brew:yj |
|---|---|
| Version | 5.1.0 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/yj |
| Homepage | https://github.com/sclevine/yj |
| Repository | https://github.com/sclevine/yj |
| Upstream docs | https://github.com/sclevine/yj#readme |
| License | Apache-2.0 |
| Source archive | https://github.com/sclevine/yj/archive/refs/tags/v5.1.0.tar.gz |
| Build dependencies | go |
| Bottle | available (on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | yj |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
yj
nix profile install nixpkgs#yjyj 1.2.4-r0
Command line tool that converts YAML to JSON
https://github.com/bruceadams/yj
sudo apk add yjyj
sudo port install yjsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.