nschemy

3.2.3 • Public • Published

Schemy is an extremely simple, lightweight yet powerful schema validation library. Perfect for lightweight-oriented projects like cloud functions where size and speed are key features. It weights less than 18 KB!

Usage

Install using npm: npm install --save schemy. Then, create a schema with the desired properties and their types:

const Schemy = require('schemy');

const characterSchema = new Schemy({
    'name': {
        type: String,
        required: true
    }
});

// Validate against input data
if (!characterSchema.validate(someData)) {
    characterSchema.getValidationErrors(); // => [ 'Missing required property name' ]
}

// You can also validate asynchronously
await Schemy.validate(someData, characterSchema);

Plugins

Schemy can be easily extended with new functionality. For example, this adds a feature to reference properties within the schema.

// Require the plugin
const ReferenceSupport = require('schemy-reference-support');

// Call Schemy.extend() with the plugin or with an array of plugins
Schemy.extend(ReferenceSupport);

new Schemy({
    password: String,
    confirm: Schemy.$ref('password')
});

You can check the whole list of available plugins in the wiki ↗

API

Static methods

Instance methods


Full documentation ↗️

Package Sidebar

Install

npm i nschemy

Weekly Downloads

0

Version

3.2.3

License

MIT

Unpacked Size

16.5 kB

Total Files

3

Last publish

Collaborators

  • luke_gd12
  • hernancete
  • jearreguez