Config File Validator validates config files across 18 formats.
It recursively searches directories for config files, detects their format by extension or filename, and reports errors.
## Install
**Homebrew**
```shell
brew install config-file-validator
```
**Winget**
```shell
winget install Boeing.config-file-validator
```
**Go Install**
```shell
go install github.com/Boeing/config-file-validator/v2/cmd/validator@latest
```
More install options
**MacPorts**
```shell
sudo port install config-file-validator
```
**Scoop**
```shell
scoop install config-file-validator
```
**Binary releases**
Download pre-built binaries for macOS, Linux, and Windows from [GitHub Releases](https://github.com/Boeing/config-file-validator/releases).
## Usage
Validate all config files in the current directory:
See the [CLI reference](https://boeing.github.io/config-file-validator/docs/reference/cli-flags) for all options.
## Features
- Schema validation via JSON Schema, XSD, and automatic [SchemaStore](https://www.schemastore.org/) lookup
- Auto-detects file types by extension and [known filename](https://boeing.github.io/config-file-validator/docs/reference/known-files)
- JSON, JUnit, and SARIF output for CI pipelines
- Watch mode for continuous local validation while editing config files
- [GitHub Action](https://github.com/Boeing/validate-configs-action) with PR annotations
- [Pre-commit hook](https://boeing.github.io/config-file-validator/docs/integrations/pre-commit)
- Project-level [`.cfv.toml`](https://boeing.github.io/config-file-validator/docs/guides/configuration-file) configuration
- Usable as a [Go library](https://boeing.github.io/config-file-validator/docs/integrations/go-library)
## Documentation
Documentation is hosted at https://boeing.github.io/config-file-validator.
## Contributing
We welcome contributions! See the [contributing guide](./CONTRIBUTING.md).
## Contributors
## License
[Apache 2.0](./LICENSE)