sirenlint

0.5.0 • Public • Published

sirenlint

A lint tool for validating Siren (http://sirenspec.org).

Build Status

Usage

CLI

$ sirenlint <siren-file>

or

$ cat <siren-file> | sirenlint

Example

$ echo '{ "links": [ { "rel": ["edit"] } ] }' | sirenlint
{ "links": [ { "rel": ["edit"] } ] }


sirenlint: 2 problems were found

error: ["links",0], Link is missing `href` attribute
warning: ["links"], The main entity is missing a link with a `self` relation

Output

The sirenlint command will output the original input followed by a summary of errors and/or warnings.
The summary includes a stringified JSON array defining the JSON path of the associated error or warning and a readable description of the problem.

Library

var fs = require('fs');
var path = require('path');
var validate = require('sirenlint');
 
var FILENAME = path.join(__dirname, '..', 'example', 'test.json');
 
var subject = fs.readFileSync(FILENAME);
 
var results = validate(subject);
 
results.forEach(function(r) {
  if (instanceof validate.ValidationWarning) {
    console.log('WARNING:', r);
  } else if (instanceof validate.ValidationError) {
    console.log('ERROR:', r);
  }
});
 

Install

npm install sirenlint -g

License

MIT

Dependencies (1)

Dev Dependencies (1)

Package Sidebar

Install

npm i sirenlint

Weekly Downloads

343

Version

0.5.0

License

MIT

Last publish

Collaborators

  • kevinswiber