--- title: "YAML" tags: "yaml markdown markup language processor jekyll" desc: "Understanding YAML, another markup language, that’s great for structured content." playlist: yaml download: https://github.com/learn-the-web/yaml-code/archive/master.zip github: https://github.com/learn-the-web/yaml-code cheatsheet: markdown-yaml-cheat-sheet extra_practice: week: title: "Web Dev 4, Week 04" url: "/courses/web-dev-4/week-04/" slides: - title: "Markdown & YAML" url: "/courses/web-dev-4/markdown-yaml/" activities: - title: "YAML Yodeller" url: "yaml-yodeller" --- Yet Another Markup Language (YAML) is a way to create structured text and data—often used for generating websites and configuration. --- ## What’s the point of YAML YAML’s simple structure is great work creating [☛ content templates](/topics/writing-for-the-web/#content-templates) and for making systems of website generation. When using a system like [☛ Jekyll](/topics/jekyll/), YAML can bet used for extra metadata about the document that isn’t part of the main content, that can be used in different places. A couple examples: - [This tutorial uses YAML, see the source code](https://raw.githubusercontent.com/learn-the-web/topics/master/yaml.md) - [The Markdown & YAML cheat sheet is written in YAML, see the code](https://raw.githubusercontent.com/learn-the-web/topics/master/markdown-yaml-cheat-sheet.md) --- ## Indent with spaces **YAML is really strict about this: indent with 2 spaces only.** --- ## Structured data YAML is for structuring data and information using systems like objects and arrays from programming languages. The data of YAML has two main structures: - **objects:** like `
` elements in HTML, or `{}` objects in JavaScript - **arrays:** like `