2.0.4 • Published 1 year ago

@moojor224/jsonschema2mk v2.0.4

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

JSON schema to markdown generator (jsonschema2mk)

This project allows to generate documentation from JSON Schema spezifications.

Examples:

Supported JSON schema features

  • Basic attributes:
    • title, description, default, examples
    • enum, const
    • deprecated
    • $ref is same file, $id, $anchor
  • number, integer
    • minimum, maximum, exclusiveMinimum, exclusiveMaximum
    • multipleOf
  • string
    • minLength, maxLength
    • format
    • pattern
    • contentMediaType
    • contentEncoding
  • boolean
  • null
  • object
    • properties
    • additionalProperties (as boolean and as object)
    • patternProperties
    • required
    • minProperties, maxProperties
    • propertyNames.pattern
  • array
    • items (schema)
    • items (array of schemas)
    • minItems, maxItems
    • uniqueItems
    • contains
    • minContains, maxContains
  • allOf, oneOf, anyOf, not (not for object properties)
  • if, then, else
  • multiple types (type: ["string", "null"])
  • object: dependencies (Properties and Schema)

Missing JSON schema features

  • $ref remotely or in other files

Install & Usage

npm i @moojor224/jsonschema2mk

Load External Plugins (Option plugin)

In the plugin, you can load your own partials. It has the same API as extensions.

The Arguments Vector is available via data.argv.

Example:

module.exports = function(data, jsonschema2mk) {
	jsonschema2mk.load_partial_dir(__dirname + "/partials");
};

Usage as Libray

You can integration this code as Library.

const jsonschema2mk = require("jsonschema2mk");

const schema = {
	"type": "number"
};

const jsm = new jsonschema2mk({
	level: 0
});
const output = jsm.convert(schema);

Options

Examples

The README.md files of all applications of the osiota project are generated with the help of this program. See the adaption script in the osiota-dev repository as well.

Examples:

License

This software is released under the MIT license.

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

2.0.4

1 year ago

2.0.3

1 year ago

2.0.2

1 year ago

2.0.1

1 year ago

2.0.0

1 year ago