json-schema-static-docs

0.28.1 • Public • Published

Json Schema Static Docs

npm version CircleCI

Description

Generates static documentation for humans based on the contents of JSON schema files (yml or json).

Support for JSON schema specification versions

Currently supports schema specified using the following specification versions: draft-06, draft-07, draft-2019-09, and draft 2020-12.

For complete documentation, including examples and supported keywords, see tomcollins.github.io/json-schema-static-docs.

Installation

npm install json-schema-static-docs

Usage

See the docs for more details.

const JsonSchemaStaticDocs = require("json-schema-static-docs");

(async () => {
  let jsonSchemaStaticDocs = new JsonSchemaStaticDocs({
    inputPath: "./schema",
    outputPath: "./docs",
    ajvOptions: {
      allowUnionTypes: true,
    },
  });
  await jsonSchemaStaticDocs.generate();
  console.log("Documents generated.");
})();

How to use draft-2020-12

To use schema based on draft-2020-12 set options.jsonSchemaVersion to https://json-schema.org/draft/2020-12/schema.

const JsonSchemaStaticDocs = require("json-schema-static-docs");

(async () => {
  let jsonSchemaStaticDocs = new JsonSchemaStaticDocs({
    inputPath: "./schema",
    outputPath: "./docs",
    jsonSchemaVersion: "https://json-schema.org/draft/2020-12/schema",
    ajvOptions: {
      allowUnionTypes: true,
    },
  });
  await jsonSchemaStaticDocs.generate();
  console.log("Documents generated.");
})();

All schema documents must use must use draft-2020-12, you can not combine this with earlier versions such as draft-07.

/json-schema-static-docs/

    Package Sidebar

    Install

    npm i json-schema-static-docs

    Weekly Downloads

    822

    Version

    0.28.1

    License

    GPL-3.0-only

    Unpacked Size

    212 kB

    Total Files

    75

    Last publish

    Collaborators

    • tomcollinsuk