JSON schema and flow types for Mapeo
npm install mapeo-schema


> Document schemas, validators and flow types for Mapeo
Original draft: https://hackmd.io/wlMcMM65TmuPXGYOEbOR2g#
- Install
- Usage
- API
- Maintainers
- Contributing
- License
``sh`
npm install --save mapeo-schema
`js
const mapeoSchema = require('mapeo-schema')
// also
const validateObservation = require('mapeo-schema/validateObservation')
const testObservation = {...}
const isValid = mapeoSchema.validateObservation(testObservation);
// returns true if validates against schema, false otherwise.
// errors a static prop on mapeoSchema.validateObservation.errors
`
`js
import type { Observation } from 'mapeo-schema'
const myObs: Observation = {...}
`
It looks like there is no code in this repo. All the code is generated from
the JSON Schema definitions. To build the validator functions and
flow definitions:
`sh`
npm run build
Tests are also generated dynamically. Place an example minimal and valid JSON
for a particular schema in the examples folder, with a filename
that matches the schema filename, e.g. if you add a schema called
mySchema.json then add an example mySchema.minimal.json andmySchema.full.json. "Minimal" means with only the required properties, where
"full" means with all the defined properties in the schema document. To run
tests:
`sh`
npm test
Before publishing, update the docs with:
`sh``
npm run docs
MIT © 2019 Digital Democracy