Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

ahungrynoob/jsonschema

Repository files navigation

@node-rs/jsonschema

https://github.com/ahungrynoob/jsonschema/actions

A node package based on jsonschema-rs for performing JSON schema validation.

Bench

ajv is much faster than this lib.

Hardware

Model Name:	MacBook Pro
Model Identifier:	MacBookPro16,1
Processor Name:	6-Core Intel Core i7
Processor Speed:	2.6 GHz
Number of Processors:	1
Total Number of Cores:	6
L2 Cache (per Core):	256 KB
L3 Cache:	12 MB
Hyper-Threading Technology:	Enabled
Memory:	32 GB

Result

Running "Validate Sync" suite...
Progress: 100%
 @node-rs/jsonschema::validate:
 2 642 863 ops/s, ±1.42% | slowest, 92.86% slower
 ajv::validate:
 36 997 776 ops/s, ±0.46% | fastest
Finished 2 cases!
 Fastest: ajv::validate
 Slowest: @node-rs/jsonschema::validate

Install

yarn add @node-rs/jsonschema

Support matrix

Operating Systems node12 node14 node16
Windows x64
Windows x32
Windows arm64
macOS x64
macOS arm64
Linux x64 gnu
Linux x64 musl
Linux arm gnu
Linux arm64 gnu
Linux arm64 musl
Android arm64
FreeBSD x64

Usage

const { compile } = require("@node-rs/jsonschema");
const schema = {
 type: 'object',
 properties: {
 foo: { type: 'integer' },
 bar: { type: 'string' },
 },
 required: ['foo'],
 additionalProperties: false,
};
const input = JSON.stringify({
 foo: 1,
 bar: 'abc',
})
const exceptionInput = JSON.stringify({
 foo: 'abc',
 bar: 1,
})
const validator = compile(schema);
// check whether the input meet schema
const result = validator(input);
console.log(result); // true
const result = validator(exceptionInput);
console.log(result); // false

API

export declare class JSONSchema {
 isValid(input: any): boolean
}
export const compile: (schema: any) => (input: string) => boolean

About

A node package based on jsonschema-rs for performing JSON schema validation

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

AltStyle によって変換されたページ (->オリジナル) /