Automic VaultAutomic Vault

brew

Install yj with Homebrew, apk, MacPorts, Nix

CLI to convert between YAML, TOML, JSON and HCL. Version 5.1.0 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install yj

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install yj

MacPorts ports tree · textproc/yj/Portfile · source: api.github.com

Linux

Alpine Linux apkverified · 92%
sudo apk add yj

Alpine Linux edge package indexes · yj · source: dl-cdn.alpinelinux.org

Nixverified · 92%
nix profile install nixpkgs#yj

nixpkgs package indexes · pkgs/by-name/yj/yj/package.nix · source: api.github.com

overview

Package summary

CLI to convert between YAML, TOML, JSON and HCL

Commands and aliases

  • yj

history

Project history and usage

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.

Project history

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.

Adoption history

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.

How it is used

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.

Why package nerds care

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.

Timeline

  • 2017-03: Repository created and v1.0 released.
  • 2018-06: v2.0 released.
  • 2019-01: v3.0 and v3.1.0 released.
  • 2019-05: v4.0.0 released.
  • 2020-07: v5.0.0 adds map-order preservation across all formats.
  • 2022-04: v5.1.0 updates TOML support to 1.0.0 and module path to v5.

Related projects

  • YAML, TOML, JSON, and HCL: the four formats yj converts among.
  • jq and yq-style tools: neighboring command-line data transformation tools.
  • HashiCorp HCL: infrastructure configuration format supported by yj.

Sources

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 13 platform targets.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
yjcliglobal executable

freshness

Version and 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.

page generated2026-07-08
manager version5.1.0
manager updated
local dataok
upstreamcurrent
latest detectedv5.1.0

https://github.com/sclevine/yj

  • infoNo package-manager update timestamp was available.low confidence

install metadata

Package metadata

Package keybrew:yj
Version5.1.0
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/yj
Homepagehttps://github.com/sclevine/yj
Repositoryhttps://github.com/sclevine/yj
Upstream docshttps://github.com/sclevine/yj#readme
LicenseApache-2.0
Source archivehttps://github.com/sclevine/yj/archive/refs/tags/v5.1.0.tar.gz
Build dependenciesgo
Bottleavailable (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-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameyj
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

yj

nix profile install nixpkgs#yj
  • normalized package name match
  • Matched by: Yj
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/yj/yj/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
apk95%

yj 1.2.4-r0

Command line tool that converts YAML to JSON

https://github.com/bruceadams/yj

sudo apk add yj
  • License: Apache-2.0
  • Architecture: x86_64
  • Source Package: yj
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Yj
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: yj from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
MacPorts95%

yj

sudo port install yj
  • normalized package name match
  • Matched by: Yj
MacPorts ports tree · api.github.com · MacPorts ports tree: textproc/yj/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Combined YAML source

View the package source record on GitHub.

combined/yj.yml

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment