Skip to content

molnarmark/schemr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“ƒ Schemr

Open Source Love Open Source Love PRs Welcome

The Ultimate Tiny schema validation package.

Getting Started

npm install --save schemr

Usage

You can find a working example in tester.js.

const { Schemr, check } = require('schemr');

const testSchema = new Schemr('human-being', {
  name: Schemr.field,
  age: Schemr.field,
  job: Schemr.field,
});

console.log(testSchema.getName());
//=> human-being
console.log(testSchema.getFields());
//=> { name: 'SchemrField', age: 'SchemrField', job: 'SchemrField' }
console.log(testSchema.toJSON());
/*=>
{
    "name": "human-being",
    "fields": {
        "name": "SchemrField",
        "age": "SchemrField",
        "job": "SchemrField"
    }
}
*/

const testData = {
  name: 'Mark',
  extraFieldForNoReason: false,
};

const checkedObject = check(testSchema, testData);
console.log(checkedObject);
//=> { name: 'Mark', age: 21, job: undefined }

const checkedObject2 = check(testSchema, testData, {
  replaceEmptyFieldsWith: 'unfilled',
});

console.log(checkedObject2);
//=> { name: 'Mark', age: 'unfilled', job: 'unfilled' }

License

  • MIT

Roadmap

TODO

About

πŸ“ƒ A tiny, unopinionated Schema definition & checker package

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published