Fishery vs JSON Schema Faker
Fishery
github.comJSON Schema Faker
json-schema-faker.js.orgSide by side
| Figure | Fishery | JSON Schema Faker |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | — | Yes |
| Windows | — | Yes |
| macOS | — | Yes |
| Linux | — | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 1 |
| Spec score · Test Data Generation Tools | 7.7 (#11) | 7.9 (#6) |
| License | The README describes Fishery as free software and links to its license. | The site identifies the project as MIT licensed. |
| Purpose | Fishery is a JavaScript library for setting up objects for tests and other data needs. | JSON Schema Faker generates valid JSON data from JSON Schema definitions. |
Plans
In their own words
Fishery
Fishery is a free JavaScript library for preparing objects as test data and for other situations where JavaScript data needs setup. Its factories define defaults, and build() creates objects with supplied parameters layered over those defaults. TypeScript users can obtain typed factory parameters and return objects, while the library also works without TypeScript. Factories may define onCreate behavior for asynchronous work; create() then performs that work and returns a promise. Additional factory capabilities include sequences, transient parameters, associations, and hooks that run after building or creating objects. Developers can extend factories with reusable builder methods by subclassing Factory. The documentation describes using factories alongside other factories to build associated objects. Installation instructions cover npm and Yarn as development dependencies. The repository identifies Fishery as free software under the MIT license and says thoughtbot, inc. maintains and funds it. GitHub Issues is the listed channel for bug reports and change requests.
JSON Schema Faker
JSON Schema Faker generates synthetic JSON data from JSON Schema definitions. It supports JSON Schema 2019-09 and 2020-12, and a numeric seed can make results repeatable. The `jsf` command can read schema files, save generated JSON to a file, and produce multiple items as an array. Reference support includes `$ref` resolution with cycle detection, adjustable recursion depth, and remote reference resolution. Built-in generators cover formats such as email, date-time, URI, IP addresses, and UUID; regex patterns are supported through an AST-based string generator. Users can register custom formats and keyword generators, with optional extensions for faker.js and chance.js. YAML output requires the YAML package through an extension. The project runs in Node.js and browsers and is built for Bun and Node.js. It is self-hosted and open source under the MIT License, with zero production dependencies. The listed plan costs nothing. One constraint: synchronous generation works only when schemas resolve without I/O; asynchronous resolvers or extensions cause it to throw.