Converta JSON para interfaces TypeScript, structs Go, dataclasses Python, schemas Zod ou JSON Schema. Cole JSON e obtenha saída tipada com aninhamento.
Cole JSON à esquerda para gerar tipos TypeScript.
Cole JSON e obtenha interfaces TypeScript, structs Go, dataclasses Python, schemas Zod ou JSON Schema em segundos. A ferramenta analisa seus dados, infere tipos para cada campo e gera interfaces nomeadas para objetos aninhados. Sem cadastro, sem chamadas de servidor, sem dependências.
Um gerador de JSON para TypeScript pega um objeto JSON de exemplo e produz as definições de tipo TypeScript correspondentes (interfaces, type aliases ou schemas Zod) inferindo o tipo de cada campo. Em vez de escrever manualmente os tipos que refletem suas respostas de API ou objetos de configuração, você cola um exemplo JSON representativo e a ferramenta gera os tipos automaticamente. Isso economiza tempo, reduz erros e lida com casos limites como objetos aninhados, arrays de tipos mistos e campos nullable.
.json.ts, .go, .py ou .jsonProduz interfaces TypeScript padrão. Melhor para respostas de API, objetos de configuração e quando você precisa de declaration merging.
Produz declarações type. Melhor para union types, mapped types e quando você precisa de mais flexibilidade nas suas definições de tipo.
Produz um JSON Schema (draft-07) a partir dos seus dados. O schema inclui propriedades tipadas, listas de campos obrigatórios, distinção inteiro vs. ponto flutuante e schemas recursivos de objetos aninhados.
Produz structs Go com tags JSON struct. Cada campo obtém um nome exportado PascalCase e um tag json:"...". Campos opcionais incluem omitempty.
Produz dataclasses Python com type annotations. Os campos usam nomes snake_case, campos ausentes são tipados como Optional[T] = None.
Produz schemas Zod com type inference. Cada objeto se torna um z.object(), campos ausentes usam z.optional(), o tipo TypeScript é exportado com z.infer.
A ferramenta mapeia valores JSON para tipos TypeScript, Go, Python, Zod e JSON Schema:
| Valor JSON | Tipo TypeScript | Tipo Go | Tipo Python | Tipo Zod | Tipo JSON Schema |
|---|---|---|---|---|---|
"ola" |
string |
string |
str |
z.string() |
"string" |
42 |
number |
int |
int |
z.number() |
"integer" |
3.14 |
number |
float64 |
float |
z.number() |
"number" |
true / false |
boolean |
bool |
bool |
z.boolean() |
"boolean" |
null |
null |
interface{} |
None |
z.null() |
"null" |
{} |
Record<string, unknown> |
map[string]interface{} |
Dict[str, Any] |
z.record(z.unknown()) |
{ "type": "object", "additionalProperties": true } |
[] |
unknown[] |
[]interface{} |
List[Any] |
z.array(z.unknown()) |
{ "type": "array", "items": {} } |
[{ ... }] |
TypeName[] |
[]StructName |
List[TypeName] |
z.array(TypeName) |
{ "type": "array", "items": { ... } } |
{ key: "val" } |
interface TypeName { ... } |
type StructName struct { ... } |
@dataclass class TypeName: ... |
z.object({...}) |
{ "type": "object", "properties": { ... } } |
Os objetos aninhados obtêm nomes baseados em caminho para evitar coliseis. Dado este JSON:
{
"user": {
"name": "Alice",
"address": { "city": "NYC" }
}
}
A ferramenta produz:
interface RootUserAddress {
city: string;
}
interface RootUser {
name: string;
address: RootUserAddress;
}
interface Root {
user: RootUser;
}
A convenção de nomes usa o caminho da chave em PascalCase: user.address se torna RootUserAddress.
Cole uma resposta de API de exemplo e gere tipos para suas chamadas fetch. Funciona com APIs REST, respostas GraphQL e qualquer endpoint JSON.
Gere tipos para arquivos de configuração, variáveis de ambiente ou objetos de configurações. A ferramenta lida com configs aninhadas com múltiplos níveis de profundidade.
Nothing you paste leaves this tab. Every tool runs entirely in your browser — no upload, no server, no account.