YAML awesomeness
A curated list of YAML resources. See also Awesome Yaml (@datatxt)
awesome-yaml
Overview
YAML is underrated
- Some developers who use it had a negative first-impression of the format, usually because of the syntax.
- Some dislike the fact that YAML allows the use of indentation for specifying scope (although indentation is technically not required).
- Some consider YAML to be superfluous: "XML and JSON fit the bill nicely enough".
- Some have either never heard of YAML or are influenced by the fact that it is not as famous as JSON or XML.
YAML is a supserset of JSON
- Does JSON support comments? ... NO
- Does JSON support comments? ... YES (if you use YAML)
- To get JSON with comments, just use YAML instead of JSON
- YAML is a superset of JSON
## This is valid YAML syntax
## Try it out now by copy-pasting it into an online YAML parser
## http://yaml-online-parser.appspot.com/
{
"json": [
"fat and rigid"
],
"yaml": [
"skinny and flexible"
],
"object": {
"array": [
{
"null_value": null
},
{
"boolean": true
},
{
"integer": 1
}
]
}
}
Digging in
Advanced
Alternatives
- Alternatives compared
- Alternatives (one-off competing)
- Variants
- Strict YAML uses a subset of the full YAML specification.
Annoyances
- Parsers Consistently bad parsing of YAML
Critique
Documentation and resources
Mentions
- After XML JSON then what?
- blog entry praising YAML over JSON
- drupal convert
- Hacker News
- HackerNews JSON/XML comparison
- kubernetes
- Statamic CMS
- Flextype
Parsers
People
Projects
- ADA YAML with focus on YAML 1.3
- Amazon ALEXA
- ANSIBLE ansible uses YAML
- Code Beautify
- Dynamic YAML -- childish
- Dynamic YAML -- dreftymac
- Go language golang-specific
- Heat Openstack
- Kubernetes uses YAML
- Python-Related
- Repoze
- Spiff (on-hold as of 2017-08)
- Sublime YAML Macros
- YAML Official
- Yamlinc
- YAMLForm-Drupal8
Security
Specification
Templating
- Ansible-based YAML plus Jinja
- Ruby-based YAML plus Ruby
- YST YAML plus Haskell
- Tempered YAML plus Bash
- Yasha YAML plus Jinja
- Zenbu YAML plus Jinja
- YTT YAML plus templating a YAML templating tool that aims to simplify complex configuration management
- Yglu Structural YAML templating and processing
Tools
Transformation
- AdaYaml Transforms
- Online transformation tools
- DDG Search
- JMESPath technically a JSON tool, but powerful enough to be relevant here
Variables
Variables (example workarounds)
Validation
- Cerberus validation package for Python
- DDG Search
Tutorial
YAML GISTS
YAML Gems
Searches
See also
Aweseomeness
- Awesome YAML (datatxt)
- Awesome home assistant
- Awesome curated
- Awesome manifesto
- Awesome contributions
- Awesome JSON
- Ansible Jinja addon filters