Cualquier objeto o array JSON
Por defecto: "Root"
Go, TS, Python o Java
Pega JSON y haz clic en Generar para ver el resultado
Pega JSON — obtén definiciones de tipos en Go, TypeScript, Python y Java al instante
Cualquier objeto o array JSON
Por defecto: "Root"
Go, TS, Python o Java
Pega JSON y haz clic en Generar para ver el resultado
| Tipo JSON | Ejemplo | Go | TypeScript | Python | Java |
|---|---|---|---|---|---|
| string | "hola" | string | string | str | String |
| integer | 42 | int | number | int | Integer |
| float | 3.14 | float64 | number | float | Double |
| boolean | true | bool | boolean | bool | Boolean |
| null | null | interface{} | unknown | Any | Object |
| array | [1,2,3] | []T | T[] | list[T] | List<T> |
| object | {"a":1} | struct{...} | interface{...} | @dataclass class | class{...} |
La integración de API es el caso de uso más común: recibes una respuesta JSON de una API REST o GraphQL y necesitas modelos tipados en tu lenguaje preferido. Escribir manualmente definiciones de struct a partir de una respuesta JSON grande es tedioso y propenso a errores — un objeto JSON de 100 líneas puede llevar más de 30 minutos escribirlo a mano, y un solo tipo de campo incorrecto causa errores en tiempo de ejecución. Los archivos de configuración (package.json, terraform.tfstate, docker-compose.yml) son otra fuente frecuente: los desarrolladores quieren acceso a los datos de configuración con seguridad de tipos. Los pipelines de generación de código usan herramientas de JSON a tipos como primer paso antes de generar código de serialización, esquemas de base de datos o documentación de API. Esta herramienta genera las 4 salidas de lenguaje a partir de una sola entrada JSON — sin registro, sin clave API, resultados instantáneos.
Go: Los nombres de campo usan PascalCase con etiquetas de struct json:"nombre_campo". Los campos de tipo string usan string; los números usan float64 por defecto a menos que sean claramente enteros. Los objetos anidados se convierten en tipos struct anidados. La etiqueta de struct conserva la clave JSON original para marshaling/unmarshaling.
TypeScript: Las interfaces usan PascalCase (p. ej., Root, Address). Los campos opcionales (de valores nulos) reciben el modificador ?. Los arrays usan la sintaxis T[]. Se generan tipos union para arrays con tipos de elementos mixtos.
Python: Usa el decorador @dataclass con type hints. Los campos reciben Optional[T] para valores anulables. Los objetos anidados se convierten en clases dataclass anidadas. Se incluyen las importaciones from dataclasses import dataclass y from typing import List, Optional.
Java: Genera clases POJO (Plain Old Java Object) con campos privados, getters/setters publicos y colecciones genericas apropiadas. Usa List<T> para arrays, Integer/Double/Boolean para wrappers de primitivos anulables.
Pega tu JSON, cambia a la pestaña Go. La herramienta genera structs de Go adecuados con etiquetas json:"...", tipos struct anidados y tipos slice para arrays. Los campos usan PascalCase con la clave JSON original conservada en las etiquetas de struct.
Selecciona la pestaña TypeScript después de pegar tu JSON. Las interfaces se generan con modificadores opcionales para campos anulables, tipos de array usando T[] e interfaces anidadas para objetos anidados.
Sí — los 4 lenguajes se generan simultáneamente. Python: @dataclass con type hints y Optional/List de typing. Java: POJO con campos privados, getters/setters y colecciones genéricas. Cambia entre pestañas para ver cada lenguaje.
Los valores JSON se mapean: strings → string/str/String, enteros → int/number/int/Integer, decimales → float64/number/float/Double, booleanos → bool/boolean/bool/Boolean, null → interface{}/unknown/Any/Object, arrays → colecciones tipadas, objetos → tipos anidados. Consulta la tabla de mapeo de tipos arriba.
Los valores JSON nulos generan tipos opcionales/puntero: *T o interface{} en Go, modificador ? en TypeScript, Optional[T] en Python, wrappers anulables en Java. Los campos que faltan en algunos elementos del array se tratan como opcionales en todas las salidas.