← Package directory
Available on winget

Install Config File Validator

A cross-platform CLI tool to validate different configuration file types

Install with winget
winget install --id Boeing.config-file-validator
Upgrade
winget upgrade --id Boeing.config-file-validator
Uninstall
winget uninstall --id Boeing.config-file-validator

About Config File Validator

A cross-platform CLI tool to validate different configuration file types

What's new in 2.2.0

This is a big one. v2.2.0 brings project-level configuration, smarter file detection, and a bunch of quality-of-life improvements we've been wanting to ship for a while. Project configuration with .cfv.toml You can now drop a .cfv.toml file in your project root and stop repeating CLI flags. The validator auto-discovers it by walking up from the current directory, so monorepos and nested projects just work. Every flag has a config equivalent — exclude dirs, file types, schema mappings, reporter settings, all of it. The config file itself is validated against an embedded schema, so typos get caught immediately instead of silently ignored. Justfile validation We added syntax validation for Justfiles (.just, justfile, .justfile) using an embedded Go parser. Unlike Makefiles, Justfiles have a real grammar, which means we can actually give you useful error messages. --gitignore support Pass --gitignore and the validator will skip anything your .gitignore covers — including nested .gitignore files, .git/info/exclude, and your global git config. No more noise from node_modules/, dist/, or vendored files showing up in your results. Works as a CLI flag, env var (CFV_GITIGNORE), or in .cfv.toml. Smarter file detection The validator now recognizes ~90 common config filenames automatically, sourced from GitHub Linguist. Files like .babelrc, tsconfig.json, Pipfile, pom.xml, and .gitconfig are detected and validated without any configuration. This also means tsconfig.json is correctly treated as JSONC (not strict JSON), and SchemaStore lookups work for extensionless files like .clangd. JS...

Read release notes

Version history

Version Updated Notes
2.2.0 Unknown This is a big one. v2.2.0 brings project-level configuration, smarter file detection, and a bunch of quality-of-life improvements we've been wanting to ship for a while. Project configuration with .cfv.toml You can now d...
2.1.0 Unknown SARIF Inline Annotations - SARIF reporter now emits region with startLine/startColumn on each result, enabling GitHub Actions to post inline PR annotations on the affected lines - 10 validators return structured position...
2.0.0 Unknown What's Changed - Add schema validation - feat: add fuzz test for ToonValidator by @mvanhorn in #427 - Add Sarif + Unit Test Refactor by @kehoecj in #428 - refactor: eliminate all test fixture files and golden files by @k...
1.11.0 Unknown What's Changed - chore(deps): bump github/codeql-action from 4.32.2 to 4.32.3 by @dependabot[bot] in #411 - chore(deps): bump github/codeql-action from 4.32.3 to 4.32.4 by @dependabot[bot] in #413 - refactor: use flag.Ne...
1.10.0 Unknown What's Changed - chore(deps): bump step-security/harden-runner from 2.13.1 to 2.13.2 by @dependabot[bot] in #364 - chore(deps): bump golangci/golangci-lint-action from 8.0.0 to 9.0.0 by @dependabot[bot] in #363 - chore(d...
1.9.0 Unknown What's Changed - chore(deps): bump actions/checkout from 4.2.2 to 5.0.0 by @dependabot[bot] in #310 - Add Winget Releaser workflow by @sitiom in #167 - Add fork user for Winget Releases by @kehoecj in #314 - Remove Winge...
1.8.0 Unknown What's Changed - Moving arch PKGBUILD to separate project by @kehoecj in #163 - Add Scoop installation reference in the readme by @sitiom in #168 - Add PKGBUILD for Arch User Repository by @timwehrle in #180 - Support en...
1.7.1 Unknown Release notes