Skip to content
Yet Another JSON Schema Validator [CLI]
Go Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
LICENSE
Makefile build: Makefile for cross-compiling releases Jan 24, 2020
README.md readme: Expand usage notes Jan 24, 2020
go.mod deps: Use go-homedir to resolve ~ Jan 24, 2020
go.sum deps: Use go-homedir to resolve ~ Jan 24, 2020
main.go yajsv: Fix absolute paths in file list Jan 31, 2020

README.md

yajsv

Yet Another JSON-Schema Validator. Command line tool for validating JSON documents against provided schemas.

The real credit goes to xeipuuv/gojsonschema which does the heavy lifting behind this CLI.

Installation

Simply use go get to install

go get github.com/neilpa/yajsv

Usage

yajsv validates JSON documents against a schema, providing a status per document:

  • pass: Document is valid relative to the schema
  • fail: Document is invalid relative to the schema
  • error: Document is malformed, e.g. not valid JSON

The 'fail' status may be reported multiple times per-document, once for each schema validation failure.

Basic usage

$ yajsv -s schema.json document.json
document.json: pass

With multiple schema files and docs

$ yajsv -s schema.json -r foo.json -r bar.json doc1.json doc2.json
doc1.json: pass
doc2.json: pass

Or with file globs (note the quotes to side-step shell expansion)

$ yajsv -s main.schema.json -r '*.schema.json' 'docs/*.json'
docs/a.json: pass
docs/b.json: fail: Validation failure message
...

Note that each of the referenced schema is assumed to be a path on the local filesystem. These are not URI references to either local or external schemas and documents.

See yajsv -h for more details

You can’t perform that action at this time.