Formatador e Validador YAML Online Grátis
Formate, valide e embeleze YAML no seu navegador e converta entre YAML e JSON. Funciona com configurações do Docker Compose, Kubernetes e GitHub Actions. Nada é jamais enviado a um servidor.
O que é YAML?
YAML (YAML Ain't Markup Language) é um formato de serialização de dados legível por humanos, projetado para ser fácil de escrever e ler. Sua sintaxe limpa, baseada em indentação, substituiu o XML em muitos arquivos de configuração modernos, impulsionando ferramentas como Docker Compose, Kubernetes, GitHub Actions, Ansible e Helm. O YAML também é um superconjunto do JSON, então todo documento JSON válido também é YAML válido, o que torna a conversão entre os dois formatos simples e sem perdas para a maioria dos dados de configuração do dia a dia.
Guia de sintaxe YAML
| key: value | Escalares — um simples par chave/valor. Strings multilinha usam | (literal, mantém as quebras de linha) ou > (dobrado, junta as linhas). |
| - item | Listas — cada item em sua própria linha, precedido por um hífen e um espaço. |
| parent: child: x | Dicionários aninhados — expressam a hierarquia apenas por meio da indentação. |
| # comment | Comentários — tudo que vem depois de um # é ignorado pelo analisador. |
| null / true / false | Valores especiais — null, true e false são reconhecidos como valores tipados, não como strings. |
| &anchor / *alias | Âncoras e aliases — defina um nó uma vez com &anchor e reutilize-o com *alias. |
YAML vs JSON: quando usar cada um
YAML
Use YAML para arquivos de configuração escritos e editados à mão. Ele suporta comentários, é mais legível e é o padrão do Docker Compose, Kubernetes, GitHub Actions, Ansible e Helm.
JSON
Use JSON para APIs e dados em trânsito. Ele é analisado mais rápido, não tem ambiguidade de tipos e é o formato por trás das APIs REST, do package.json e do tsconfig.json.
Erros YAML comuns e como corrigi-los
- Usar tabulações em vez de espaços para a indentação — substitua cada tabulação por espaços, já que o YAML proíbe tabulações.
- Indentação inconsistente — mantenha o mesmo número de espaços em cada nível de aninhamento em todo o documento.
- Uma string contendo dois-pontos sem aspas — coloque valores como "12:30" ou "http://example.com" entre aspas.
- Booleanos ambíguos — valores como yes, no, on e off são interpretados como true/false; coloque-os entre aspas se você quer as palavras literais.
- Caracteres especiais em um valor sem aspas — caracteres como @, # e { exigem que o valor esteja entre aspas.