node package manager
Easy collaboration. Discover, share, and reuse code in your team. Create a free org »



Language-agnostic schema package manager for better data models, built with component.


  • write reusable JSON schemas to define data models
  • no registry publishing or account required, uses github repositories
  • automatic versioning using git commit ids.


With node.js previously installed:

npm install -g schema-component


To generate a new schema project:

$ schema create user
  create : user
  create : user/
  create : user/component.json
  create : user/.gitignore
  create : user/index.json

To install any schema:

component install <org/repo>

To build a ./build/schema.json file from components:

schema build

To build it as a standalone javascript file:

schema build -s

To use use in the component build process:

var schema = require('schema-component');
var Builder = require('component-builder');
var builder = new Builder;
builder.use(schema);, out){


Reserved properties

  • name
  • type
  • description
  • title
  • image
  • url
  • value

The value associated with the value key must be either a string, a number, true, false or null.

The value associated with the type key must be a term, a compact IRI, an absolute IRI, a relative IRI, or null.


schema validate ./data.json --against ./schema.json

Maybe should work similar to brew tap x, so you can bundle schemas into single repos.


  • MIT
  • Surveying icon by Luis Prado from The Noun Project