O que esta ferramenta faz
Objetos aninhados viram tabelas; arrays de objetos viram arrays de tabelas.
{
"db": { "host": "localhost", "pool": { "size": 10 } },
"servers": [{ "name": "a" }, { "name": "b" }]
}
[db]
host = "localhost"
[db.pool]
size = 10
[[servers]]
name = "a"
[[servers]]
name = "b"
A raiz precisa ser um objeto: um arquivo TOML é uma tabela, então um array JSON no topo não tem onde pendurar as chaves.
O null é o que interrompe
O TOML não tem valor nulo, e as duas formas de fingir o contrário são falsas:
- tirar a chave muda o que o arquivo diz — uma configuração ausente não é uma configuração posta em nada;
- escrever
""inventa um valor que não estava lá.
Então a conversão para e diz qual. É o único ponto em que ela recusa um documento JSON válido, e recusa porque terminar seria mentir.
Inteiros além de 64 bits são escritos como estão
{ "id": 12345678901234567890 }
sai com os vinte dígitos. Os inteiros do TOML são de 64 bits com sinal: esse valor fica fora da faixa, e um leitor estrito vai recusar o arquivo.
É deliberado. A alternativa — arredondá-lo para 12345678901234567000, que é o que faz um conversor passando por um double — entrega um arquivo que analisa limpo e contém outro número. Uma falha ruidosa vale mais que uma mentira discreta.
As datas continuam strings
O JSON não tem tipo data: "2026-01-01" chega como texto e sai como "2026-01-01", entre aspas.
O TOML tem datas nativas, e usar uma seria decidir que o autor pensava numa data. Às vezes pensava; às vezes essa string é uma referência de produto, um nome de pasta, uma versão. O JSON já nos disse que era texto, e não há razão para contradizê-lo.
Privado por padrão
Tudo é executado localmente no seu navegador com JavaScript. Os seus dados nunca são enviados para um servidor, o que torna a ferramenta segura para conteúdo sensível e funciona offline.