Ir para o conteúdo

Conversor de TOML para JSON

Converta um documento de configuração TOML em JSON diretamente no seu navegador.

Entrada
Saída

Conversor de TOML para JSON

Cole um arquivo de configuração TOML e receba um objeto JSON limpo e estruturado — o formato que a maioria dos scripts, APIs e ferramentas de construção realmente esperam. TOML é o padrão para Cargo.toml de Rust, pyproject.toml de Python, Hugo e inúmeras configurações de aplicativos precisamente porque é fácil para humanos lerem e escreverem, mas no momento em que essa configuração precisa chegar a JavaScript, uma etapa de CI ou uma chamada REST, JSON é o que o resto do conjunto de ferramentas deseja. Este conversor preenche essa lacuna sem instalar um analisador ou escrever um script.

O analisador cobre as partes do TOML 1.0 que você realmente encontrará em uma configuração real: chaves nuas e entre aspas, chaves pontilhadas como server.host que constroem objetos aninhados, strings básicas com escapes e seu formato de múltiplas linhas com aspas triplas, strings literais para caminhos que não devem ser escapados, inteiros em decimal, hex, octal ou binário com separadores de sublinhado, flutuadores incluindo expoentes e inf/nan, booleanos, deslocamento e data-hora local, matrizes abrangendo várias linhas com vírgulas finais, tabelas embutidas e cabeçalhos [tabela] e [[matriz de tabelas]] para blocos repetidos, como uma lista de servidores ou dependências. Comentários começando com # são eliminados, exatamente como o TOML os define.

Escolha como o JSON é recuado - dois espaços, quatro espaços, tabulações ou uma única linha reduzida para colar em outro lugar - e, opcionalmente, classifique as chaves de cada objeto em ordem alfabética, o que torna muito mais fácil diferenciar duas versões de uma configuração gerada. Se o TOML tiver um problema de sintaxe, a ferramenta nomeará a linha exata e o que há de errado – uma string não fechada, um sinal de igual ausente, uma chave duplicada – em vez de simplesmente falhar silenciosamente.

Tudo é executado localmente no seu navegador. Nada do que você cola é carregado em qualquer lugar, o que é importante quando a configuração contém hosts de banco de dados, endpoints de API ou outros detalhes que você prefere não enviar a um servidor apenas para reformatar um arquivo.

FAQ

Quais partes do TOML isso suporta?
O subconjunto prático 1.0: chaves (nuas, entre aspas, pontilhadas), strings básicas e literais, incluindo formas multilinhas, números inteiros em decimal/hex/octal/binário, flutuadores com expoentes e inf/nan, booleanos, datas e horas, matrizes, tabelas embutidas, cabeçalhos [tabela] e [[matriz de tabelas]] e # comentários.
O que acontece com datas e datas e horas?
TOML tem tipos de data e hora reais que o JSON não tem, então eles são mantidos exatamente como estão escritos - como strings JSON como "1979-05-27T07:32:00Z" - em vez de serem adivinhados em outra coisa.
Como os blocos [[matriz de tabelas]] são convertidos?
Cada cabeçalho [[nome]] anexa um novo objeto a um array sob essa chave, de modo que blocos repetidos — uma lista de dependências, servidores ou frutas — se tornam um array JSON de objetos na ordem em que aparecem.
O que acontece quando o TOML comete um erro?
Ele informa o número da linha e um motivo curto — uma string não fechada, um '=' ausente, uma chave definida duas vezes — em vez de retornar um resultado em branco ou parcialmente convertido.
Meu arquivo de configuração foi carregado em algum lugar?
A conversão é executada inteiramente no seu navegador e o TOML que você cola nunca sai do seu dispositivo – seguro para configurações que contêm credenciais ou nomes de host internos.