assemble-json-schemas
TypeScript icon, indicating that this package has built-in type declarations

1.0.3 • Public • Published

npm version

assemble-json-schemas

If you're building a repo with your JSON schemas, and want automatic creation of TypeScript interfaces (as well as the schemas as objects), this package is probably for you.

The easiest way to use this, is to add a scripts entry in your package.json, which runs node_modules/.bin/ajs schema-dir out-file. The schema-dir should point to a directory (which could have sub-directories) where the json schemas are located, and out-file is a base file name (without extension) which will be generated. The generated files will be out-file.js, out-file.ts and out-file.d.ts. If the out-file is left blank, it will default to index in the current working directory and if set to the name of an existing directory, /index will be appended automatically.

Let's say you put your schemas in a schemas/ directory, and you want to automatically have index.ts, index.js and index.d.ts created for you, the command will be node_modules/.bin/ajs schemas.

Using as an API

The following is an example of how to use assemble-json-schemas given a directory of schemas, and an output file (to which .js, .ts and .d.ts will be appended):

import { assemble } from 'assemble-json-schemas'
 
assemble( __dirname + "/schemas", __dirname + "/index" )
.catch( err => console.error( err ) );

Readme

Keywords

none

Package Sidebar

Install

npm i assemble-json-schemas

Weekly Downloads

1

Version

1.0.3

License

MIT

Last publish

Collaborators

  • grantila