Che cosa fa questo strumento
Gli oggetti annidati diventano tabelle; gli array di oggetti, array di tabelle.
{
"db": { "host": "localhost", "pool": { "size": 10 } },
"servers": [{ "name": "a" }, { "name": "b" }]
}
[db]
host = "localhost"
[db.pool]
size = 10
[[servers]]
name = "a"
[[servers]]
name = "b"
La radice dev’essere un oggetto: un file TOML è una tabella, quindi un array JSON in cima non ha dove appendere le sue chiavi.
È null a fermare tutto
TOML non ha un valore nullo, e i due modi di fingere il contrario sono sbagliati:
- togliere la chiave cambia ciò che il file dice — un’impostazione assente non è un’impostazione messa a nulla;
- scrivere
""inventa un valore che non c’era.
Quindi la conversione si ferma e ti dice quale. È l’unico punto in cui rifiuta un documento JSON valido, e lo rifiuta perché finire vorrebbe dire mentire.
Gli interi oltre i 64 bit sono scritti così come sono
{ "id": 12345678901234567890 }
esce con tutte e venti le cifre. Gli interi TOML sono a 64 bit con segno: quel valore è fuori intervallo, e un lettore stretto rifiuterà il file.
È voluto. L’alternativa — arrotondarlo a 12345678901234567000, ciò che fa un convertitore che passa per un double — ti consegna un file che si analizza pulito e contiene un altro numero. Un fallimento rumoroso vale più di una bugia discreta.
Le date restano stringhe
JSON non ha un tipo data: "2026-01-01" arriva come testo ed esce come "2026-01-01", tra virgolette.
TOML ha date native, e usarne una vorrebbe dire decidere che l’autore pensasse a una data. A volte sì; a volte quella stringa è un codice prodotto, il nome di una cartella, una versione. JSON ci ha già detto che è testo, e non c’è motivo di contraddirlo.
Privato per progettazione
Tutto viene eseguito localmente nel browser con JavaScript. I tuoi dati non vengono mai caricati, quindi lo strumento è sicuro per contenuti sensibili e funziona anche offline.