MyJSON
Type generator

JSON → TypeScript, Zod, Go, Rust, Python — one paste.

Paste a JSON example. Get well-named interfaces, runtime-validating Zod schemas, idiomatic Go structs with json tags, Rust structs with serde, and Pydantic models. Switch languages without re-pasting.

Runs entirely in your browser

Smart inference

Union types across array elements, optional unification, nested object types named in PascalCase.

Six target languages

TypeScript, Zod, Go, Rust, Python (dataclass + Pydantic), and JSON Schema. Output is copy-paste-ready.

Idiomatic per language

Go gets json tags. Rust gets #[derive(Deserialize)]. Pydantic uses Field(alias=…). Names follow each language's conventions.

Runs locally

Your JSON never leaves the browser. No API limits, no signup, no leaks.

FAQ

How does it handle arrays of mixed shapes?
Each element's shape is unified — common keys become required, divergent keys become optional, divergent value types union into anyOf.
Will my key names break? Some are not valid identifiers.
Reserved or non-identifier keys are quoted (TypeScript), aliased (Pydantic), or json-tagged (Go) automatically.
Can I convert TypeScript back to JSON Schema?
Use the Schema view — it infers a Draft-07 JSON Schema from your example, including formats like email, uri, uuid, date-time.

Related tools