Conversor TOML ↔ JSON
Converter
TOML e JSON codificam os mesmos dados de configuração hierárquicos com sintaxe muito diferente. Este conversor caminha ambas direções: cole um `Cargo.toml` ou `pyproject.toml` pra obter a forma JSON que seu linter ou gerador espera, ou alimente um config JSON e obtenha a versão TOML que vem com o tooling Rust/Python. Lida com as partes do TOML que realmente aparecem na natureza — tabelas top-level `[a.b]`, array-of-tables `[[a.b]]`, tabelas inline `{ k = v }`, arrays inline, strings básicos, inteiros, floats com separadores underscore, booleans, datas ISO e datetimes.
Como usar
- Escolha uma direção. `TOML → JSON` analisa seu TOML num objeto JSON; `JSON → TOML` faz o inverso.
- Cole a fonte. Erros apontam pra linha / caractere que quebrou o parsing.
- Copie o resultado. A saída TOML agrupa escalares primeiro, depois seções `[table]`, depois blocos `[[array.of.tables]]` — a ordem que a maioria dos linters espera.
Perguntas frequentes
- Cobre a especificação TOML completa?
- Lida com tabelas, keys com pontos, tabelas inline, arrays inline, arrays multi-linha, strings básicos, strings básicos multi-linha, strings literais, inteiros com separadores `_`, floats, booleans, datetimes RFC 3339, e array-of-tables. Funcionalidades menos comuns (aritmética de datetime com offset, casos edge de sequências escape, valores mistos muito profundamente aninhados) fazem round-trip mas podem precisar de edição manual.
- Por que JSON → TOML reordena minhas keys?
- TOML requer que escalares venham antes de qualquer bloco `[table]` dentro de uma seção, porque uma vez que `[table]` abre, o próximo conjunto de keys pertence a ele. O serializador reorganiza escalares primeiro então a saída parseia de volta corretamente — o significado do seu campo top-level não muda.
Ferramentas relacionadas
Conversor de Unidades CSS
Converta entre px, rem, em, pt, vw, vh e % usando seu próprio tamanho de fonte e viewport.
Conversor JSON ↔ YAML
Converta JSON em YAML ou YAML em JSON — escolha a indentação e copie o resultado.
Conversor de Tamanho de Dados
Converta entre bytes, KB, MB, GB, TB — em decimal (1000) ou binário (1024).
Conversor de Algarismos Romanos
Converta entre algarismos arábicos e romanos de 1 a 3999.
Conversor de Bases Numéricas
Converta números entre binário, octal, decimal e hexadecimal.
Conversor de Unidades
Converta comprimento, peso, temperatura, área, volume, velocidade e tempo.