0.0.3 • Published 3 months ago

@doubter/json-schema v0.0.3

Weekly downloads
-
License
MIT
Repository
github
Last release
3 months ago

Doubter × JSON Schema

Converts Doubter shapes from and to JSON schemas.

!WARNING\ This project is at the early development stage.

npm install --save-prod @doubter/json-schema

Define a shape:

import * as d from 'doubter';
import { toJSONSchema } from '@doubter/json-schema';

const shape = d.object({
  name: d.string(),
  age: d.number().gt(10).optional()
});
// ⮕ Shape<{ name: string, age?: number | undefined }>

const schema = toJSONSchema(shape);

The schema is a JSON schema object:

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "age": {
      "type": "number",
      "exclusiveMinimum": 10
    }
  },
  "required": ["name"]
}