DevToolPal
PT

Conversor de TOML para JSON

Converta TOML em JSON e JSON em TOML: tabelas, arrays de tabelas, tabelas inline e datas, com a posição exata dos erros.

Roda localmente, nada é enviado

Opções

Direção
Indentação do JSON

Entrada

0 caracteres · 0 B

Saída

0 caracteres · 0 B

O que faz

Esta ferramenta converte TOML em JSON e JSON de volta em TOML. TOML é o formato de configuração por trás do Cargo.toml do Rust, do pyproject.toml do Python, do Hugo, da Netlify, do Deno e de muitas outras ferramentas. Ele é fácil de editar para pessoas, mas a maioria dos scripts, APIs e validadores espera JSON. Converter permite inspecionar uma configuração com ferramentas de JSON, passá-la para um programa ou transformar dados JSON em um arquivo de configuração organizado.

Como usar

  1. Cole TOML na caixa de entrada, solte um arquivo .toml sobre ela ou pressione Exemplo.
  2. O JSON aparece enquanto você digita. Escolha 2 ou 4 espaços de indentação.
  3. Mude a Direção para JSON → TOML para converter no sentido inverso. O JSON precisa ser um objeto no nível superior, porque um documento TOML é sempre uma tabela.
  4. Copie ou baixe o resultado.

Se o TOML tiver um erro, a mensagem mostra a linha e a coluna, e clicar nela leva até o ponto. Erros comuns são uma aspa de fechamento faltando, definir a mesma chave ou tabela duas vezes e colocar uma string sem aspas à direita do =.

Exemplo

Entrada TOML:

[server]
host = "0.0.0.0"
port = 8080

[[users]]
name = "Alice"
roles = ["admin", "editor"]

Saída JSON:

{
  "server": { "host": "0.0.0.0", "port": 8080 },
  "users": [{ "name": "Alice", "roles": ["admin", "editor"] }]
}

[server] vira um objeto aninhado e cada bloco [[users]] adiciona um elemento ao array users.

Mapeamento de tipos

  • Strings, inteiros, floats e booleanos são mapeados diretamente. Inteiros grandes além do intervalo seguro do JavaScript perdem precisão, então mantenha IDs como strings.
  • Arrays viram arrays, e tabelas e tabelas inline viram objetos.
  • Data-horas com offset, data-horas locais, datas locais e horas locais viram strings ISO 8601.
  • No sentido inverso, null não tem equivalente em TOML e é informado como erro com o seu caminho. Objetos aninhados viram seções [table] e arrays de objetos viram seções [[array]].

Perguntas frequentes

› Meu arquivo TOML é enviado?

Não. A leitura e a conversão rodam inteiramente no seu navegador, então manifestos do Cargo, arquivos pyproject e configurações com segredos nunca saem do seu dispositivo.

› Qual versão do TOML é suportada?

TOML 1.0, incluindo tabelas, arrays de tabelas, tabelas inline, strings de várias linhas, datas e horas, e inteiros hexadecimais, octais e binários.

› Como as datas do TOML são convertidas para JSON?

O JSON não tem tipo de data, então datas e horas viram strings ISO 8601. Por exemplo, 2026-10-08 continua "2026-10-08" e 1979-05-27T07:32:00Z vira "1979-05-27T07:32:00.000Z".

› Por que a conversão de JSON para TOML falha com null?

O TOML não tem valor null. A ferramenta para e informa o caminho do primeiro null, como database.password, para você remover a chave ou dar um valor a ela.

› Os comentários são mantidos?

Não. Os comentários do TOML são descartados porque o JSON não consegue guardá-los, e o JSON não tem comentários para levar ao TOML.