JSON-LD TypeScript types for Schema.org vocabulary.
schema-dts provides TypeScript definitions for Schema.org vocabulary in JSON-LD format. The typings are exposed as complete sets of discriminated type unions, allowing for easy completions and stricter validation.
This repository contains two NPM packages:
- schema-dts-gen Providing a command-line tool to generate TypeScript files based on a specific Schema version and layer.
- schema-dts Pre-packaged TypeScript typings of latest Schema.org schema, without pending and other non-core layers.
Note: This is not an officially supported Google product.
To use the typings for your project, simply add the
schema-dts
NPM package to your
project:
npm install schema-dts
Then you can use it by importing "schema-dts"
.
The Schema Typings Generator is available in the
schema-dts-gen
package.
npm install schema-dts-gen
npx schema-dts-gen --schema=3.4
Command line usage:
-
schema
andlayer
: Used to load the actual Schema definition:https://schema.org/version/${schema}/${layer}.nt
-
context
: Defaults tohttps://schema.org
, the value or values to be used with the"@context"
property.Can be either a single URL, or a comma separated list of two or more name:URL pairs.
The context affects names of string properties in types, as well as the values of an object's
"@type"
. -
deprecated
/nodeprecated
: Whether or not to include deprecated Schema.org types and properties. When included, these types will still be marked with@deprecated
JSDOC tags.
Use NPM to install dependencies:
npm install
Use Gulp to build the package:
gulp generate-ts
or simply build the schema-dts generator:
gulp build-generator
To contribute changes, see the CONTRIBUTING.md file.