Conversor de YAML para JSON
Converta dados YAML para JSON. Transforme instantaneamente no navegador estruturas escritas em YAML — manifestos do Kubernetes, docker-compose.yml, arquivos de configuração de CI — em um formato que ferramentas exclusivas de JSON, como o jq, conseguem processar.
Dicas de uso
- Cole diretamente um manifesto do Kubernetes ou um docker-compose.yml para visualizar sua estrutura como JSON, permitindo que ferramentas de linha de comando como o jq, que só entendem JSON, façam consultas.
- Valores sem aspas que começam com zero à esquerda, como CEPs ou números de telefone, são interpretados como números e perdem esse zero inicial; sempre coloque aspas nos valores que devem permanecer como texto.
- YAML complexo que usa âncoras (`&`), aliases (`*`) ou escalares de bloco (`|`/`>`) não é suportado. Reescreva-o em uma forma mais simples antes de colar.
- Desmarque "Formatação legível" para obter um JSON em uma única linha sem quebras de linha, útil ao colar no corpo de uma requisição de API onde quebras de linha não são desejadas.
Perguntas frequentes
Curiosidade — Por que os arquivos de configuração são escritos em YAML, mas as ferramentas pedem JSON
O YAML é amplamente usado em arquivos de configuração editados diretamente por pessoas — Kubernetes, docker-compose, workflows do GitHub Actions, playbooks do Ansible — graças à sua legibilidade: permite comentários e as aspas são, em sua maioria, opcionais. Já o JSON tem uma especificação pequena e sem ambiguidades, fácil de ser processada mecanicamente por programas, o que o tornou o formato padrão para troca de dados de APIs e ferramentas de linha de comando como o jq.
A conversão de YAML para JSON preenche essa lacuna entre "pessoas escrevem YAML, ferramentas pedem JSON". Manifestos do Kubernetes em particular podem ter centenas de linhas, e o `grep` sozinho logo encontra seus limites ao procurar um valor específico. Ao converter primeiro para JSON e consultar com o jq, você consegue extrair exatamente o valor necessário com um caminho como `.spec.containers[].image`.
Dito isso, a especificação completa do YAML (YAML 1.2) é enorme, cobrindo recursos avançados como reutilização de valores via âncoras e aliases, streams multi-documento e escalares de bloco para strings de múltiplas linhas. Esta ferramenta deliberadamente ignora toda essa superfície e se concentra no "subconjunto comum" de mapeamentos, sequências e escalares básicos que aparece na prática, mantendo uma implementação simples sem dependências externas.