Software Development

What is YAML?

Quick answer

A human-readable data format that uses indentation to represent structure, widely used for configuration files.

YAML, explained

YAML is a recursive acronym for YAML Ain't Markup Language. It represents data as key-value pairs, lists, and nested structures using indentation instead of brackets, which makes it easier for people to read and edit than JSON or XML. Unlike JSON, it also supports comments.

YAML is common in DevOps and cloud tools. Kubernetes manifests, Docker Compose files, GitHub Actions workflows, and Ansible playbooks are typically written in YAML. For example, a CI workflow file might list the steps to install dependencies, run tests, and deploy. Its reliance on whitespace can cause subtle errors, such as a single misaligned space breaking a file, and some values can be interpreted unexpectedly, so linters and validators are helpful.

Related terms

Guides that mention YAML