Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bebraw/schema2object
Generate random objects based on JSON Schema (MIT)
https://github.com/bebraw/schema2object
Last synced: 25 days ago
JSON representation
Generate random objects based on JSON Schema (MIT)
- Host: GitHub
- URL: https://github.com/bebraw/schema2object
- Owner: bebraw
- License: mit
- Created: 2015-01-13T12:13:38.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2015-01-20T14:49:25.000Z (about 10 years ago)
- Last Synced: 2024-04-26T20:49:58.359Z (10 months ago)
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/schema2object
- Size: 176 KB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-github-repos - bebraw/schema2object - Generate random objects based on JSON Schema (MIT) (JavaScript)
README
[![build status](https://secure.travis-ci.org/bebraw/schema2object.png)](http://travis-ci.org/bebraw/schema2object)
# schema2object - Generate random objects based on JSON SchemaUsage:
```javascript
// it is possible to replace generators with something else
// just implement { -> fn} where fn should return
// a generated value
var generators = require('annogenerate');var schema2object = require('schema2object');
var definitions = ...; // Object of JSON schemas (name -> schema)
var definition = ...; // JSON Schemavar properties = definition.properties;
// if you want, you can generate data only for required fields
if(definition.required) {
properties = schema2object.getRequiredProperties(definition);
}var o = schema2object.properties2object({
generators: generators,
// fieldGenerators - optional generators that match per field name
properties: properties,
definitions: definitions // optional definitions for checking against $ref
});// you should have an object with random data now
console.log(o);
```See `/demo` for a more comprehensive example.
## License
`schema2object` is available under MIT. See LICENSE for more details.