SkillAgentSearch skills...

Jsonschema

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

Install / Use

/learn @ahungrynoob/Jsonschema
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

@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
View on GitHub
GitHub Stars52
CategoryDevelopment
Updated5mo ago
Forks0

Languages

TypeScript

Security Score

97/100

Audited on Oct 30, 2025

No findings