Generador de TypeScript y Zod desde JSON

Pegá cualquier JSON abajo y obtené al instante interfaces de TypeScript y schemas de validación de Zod que coinciden con su forma. El generador compara la forma de cada elemento de un array para detectar campos opcionales, reutiliza un mismo tipo cuando un objeto anidado se repite, y puede convertir valores de texto repetidos en uniones de literales (enums). Todo se procesa localmente en tu navegador: tu JSON nunca se sube a ningún servidor.

Estilo de TypeScript

Preguntas frecuentes

¿Mi JSON se sube a algún servidor?

No. Todo el proceso -parsear el JSON, inferir los tipos y generar el código de TypeScript y Zod- ocurre 100% en tu navegador con JavaScript plano. Nada se envía a ningún servidor.

¿Cómo decide si un campo es opcional?

Cuando un array contiene varios objetos, el generador compara la forma de cada elemento. Si una clave falta en al menos un elemento, se marca como opcional (?) en TypeScript y con .optional() en Zod. Si una clave está presente en todos pero a veces vale null, se convierte en una unión nullable (T | null) en lugar de volverse opcional.

¿Qué hace la opción "Detectar enums"?

Cuando un campo de texto se repite en varios elementos de un array con pocos valores distintos (entre 2 y 8), esta opción lo convierte en un tipo de unión de literales en TypeScript (por ejemplo 'paid' | 'pending') y en un z.enum([...]) en Zod, en lugar del tipo genérico string. Un valor que aparece una sola vez nunca se convierte en enum.

¿El Zod generado funciona con Zod v3 y v4?

Sí. La salida usa únicamente la API estable del núcleo (z.object, z.array, z.string, z.union, z.enum, .optional()), que no cambió entre Zod 3 y Zod 4, así que podés pegarla en cualquiera de las dos versiones.