yamlfmt
brew install yamlfmt
v0.21.0
Apache-2.0
Go command-line tool to format and lint YAML files with extensible customization.
Why you might care
Distributes as a single stateless binary with no runtime dependencies, making it easy to drop into CI/CD pipelines or development workflows. Extensible via custom formatters and usable as a library for programmatic YAML processing. Useful for enforcing consistent YAML style across projects.
1.9k
30-day installs · #995
5.1k
90-day · #1079
16.1k
365-day · #1176
1.8k
★ GitHub stars · updated 4mo ago
Build dependencies
Links
- https://github.com/google/yamlfmt
- GitHub: google/yamlfmt
- Brew formula source: Formula/y/yamlfmt.rb
Blurb generated by claude-haiku-4-5 on today.
Raw metadata
{
"aliases": [],
"alternatives": [
"prettier",
"stylua",
"shfmt"
],
"build_dependencies": [
"go"
],
"categories": [
"formatter",
"yaml-tool",
"linter"
],
"caveats": null,
"conflicts_with": [],
"dependencies": [],
"deprecated": 0,
"deprecation_reason": null,
"desc": "Extensible command-line tool to format YAML files",
"disable_reason": null,
"disabled": 0,
"enrichment_fetched_at": "2026-06-20T23:41:15+00:00",
"first_seen": "2026-06-20T23:34:18+00:00",
"full_name": "yamlfmt",
"github_default_branch": "main",
"github_last_commit_at": "2026-01-30T13:53:17Z",
"github_readme_excerpt": "# yamlfmt\n\n`yamlfmt` is an extensible command line tool or library to format yaml files. \n\n## Goals\n\n* Create a command line yaml formatting tool that is easy to distribute (single binary)\n* Make it simple to extend with new custom formatters\n* Enable alternative use as a library, providing a foundation for users to create a tool that meets specific needs \n\n## Maintainers\n\nThis tool is not yet officially supported by Google. It is currently maintained solely by @braydonk, and unless something changes primarily in spare time.\n\n## Blog\n\nI\u0027m going to use these links to GitHub Discussions as a blog of sorts, until I can set up something more proper:\n* yamlfmt\u0027s recent slow development [#149](https://github.com/google/yamlfmt/discussions/149)\n* Issues related to the yaml.v3 library [#148](https://github.com/google/yamlfmt/discussions/148)\n\n## Installation\n\nTo download the `yamlfmt` command, you can download the desired binary from releases or install the module directly:\n```\ngo install github.com/google/yamlfmt/cmd/yamlfmt@latest\n```\nThis currently requires Go version 1.21 or greater.\n\nNOTE: Recommended setup if this is your first time installing Go would be in [this DigitalOcean blog post](https://www.digitalocean.com/community/tutorials/how-to-build-and-install-go-programs).\n\nYou can also download the binary you want from releases. The binary is self-sufficient with no dependencies, and can simply be put somewhere on your PATH and run with the command `yamlfmt`. Read more about verifying the authenticity of released artifacts [here](#verifying-release-artifacts).\n\nYou can also install the command as a [pre-commit](https://pre-commit.com/) hook. See the [pre-commit hook](./docs/pre-commit.md) docs for instructions.\n\n## Basic Usage\n\nSee [Command Usage](./docs/command-usage.md) for in-depth information and available flags.\n\nTo run the tool with all default settings, run the command with a path argument:\n```bash\nyamlfmt x.yaml y.yaml \u003c...\u003e\n```\nYou can specify as many paths",
"github_repo": "google/yamlfmt",
"github_stars": 1783,
"github_topics": [],
"homepage": "https://github.com/google/yamlfmt",
"homepage_og_description": null,
"homepage_og_image": null,
"homepage_title": null,
"installs_30d": 1901,
"installs_365d": 16139,
"installs_90d": 5140,
"keg_only": 0,
"keg_only_reason": null,
"last_seen": "2026-06-20T23:34:18+00:00",
"license": "Apache-2.0",
"llm_generated_at": "2026-06-20T23:48:19+00:00",
"llm_model": "claude-haiku-4-5",
"name": "yamlfmt",
"oldnames": [],
"one_liner": "Go command-line tool to format and lint YAML files with extensible customization.",
"optional_dependencies": [],
"rank_30d": 995,
"rank_365d": 1176,
"rank_90d": 1079,
"raw_hash": "3a9af8da19263e5e",
"recommended_dependencies": [],
"revision": 0,
"ruby_source_path": "Formula/y/yamlfmt.rb",
"tap": "homebrew/core",
"test_dependencies": [],
"uses_from_macos": [],
"version_head": "HEAD",
"version_stable": "0.21.0",
"versioned_formulae": [],
"why_use_this": "Distributes as a single stateless binary with no runtime dependencies, making it easy to drop into CI/CD pipelines or development workflows. Extensible via custom formatters and usable as a library for programmatic YAML processing. Useful for enforcing consistent YAML style across projects."
}