Footstep 1: YAML

YAML Ain’t Markup Language, some believe it to be Yet Another Markup Language, but the official acronym is recursive.

YAML is a human friendly data serialisation standard for all programming languages.

# comment
function:
  - item 1
    data:
      - item 1a
      - item 1b
  - item 2
    data

Below is a real Home Assistant example, which will be covered in detail later in the guide, but shows the YAML to add a basic IP webcam.

# old android phone
android_ip_webcam:
  - host: 192.168.10.100
    port: 8080
    name: 'Cam 1'
    sensors:
      - battery_level
      - battery_temp
    switches:
      - torch
      - video_recording 

YAML is a little picky on the formatting and the right number of spaces is required. Luckily, Home Assistant Configurator shows a red warning exclamation (!) mark to depict invalid formatting and a green tick for valid.

The Server Controls in Configuration also allows to run a ‘Configuration validation’ check to confirm all configuration files are valid in formatting and expected values.

Next: Step 4: Looks