A very simple CLI tool to convert JSON objects or files into zod schemas.
json-to-zod -s myJson.json -t mySchema.ts
Options:
- --source/-s [source file name]
- --target/-t [(optional) target file name]
- --name/-n [(optional) schema name in output]
import { jsonToZod } from "json-to-zod"
const myObject = {
hello: "hi"
}
const result = jsonToZod(myObject)
console.log(result)
const schema = z.object({hello: z.string()});
Since zod can be more specific about the primitives sometime you want to be more precise.
Eg. if an string has been parsed to:
z.string();
But you know it is a date and therefor should be called:
z.string().date();
Then you can create a configuration file called: .jtzrc.yml
and define
schema overrides there.
Take a look at the .jtzrc.yml.example
file.