normalize

Normalize DevOps YAML Config

Parse and normalize YAML configs for diff, schema-check, and reconciliation

  • Parses k8s, GitHub Actions, and docker-compose YAML
  • Stable JSON for diff and compare
  • Multi-document YAML supported

Paste your YAML config — instant JSON tree, runs locally in your browser.

Why this package exists

Common problems

  • YAML configs drift across environments, branches, and teams — same intent, different formatting, key order, or whitespace.
  • Diffing raw YAML hides real changes behind formatting noise (key reordering, trailing whitespace, optional null fields).
  • Schema-checking a YAML config means parsing it first — most validators expect JSON.

When to use

Use this when comparing Kubernetes manifests across branches, validating GitHub Actions workflows, or building config-reconciliation tooling that needs a stable JSON shape.

Expected outcome

A sorted, normalized JSON tree for the YAML config, paired with a validation report. Same config produces the same JSON every time, so downstream diff tools highlight real changes.

Automatically detects

  • Kubernetes manifests
  • GitHub Actions
  • docker-compose
  • Multi-doc streams
  • Anchor refs

What the wizard asks

4 steps

Each step shows your input, the question, and a preview of the output.

  1. 1

    Parse the YAML config into JSON?

    Convert the YAML document into a JSON tree so downstream utilities can operate on it natively.

  2. 2

    Which fields should reach downstream tools?

    Strip vendor extensions, comments-as-fields, and noisy optional keys. Keep only the canonical config shape.

  3. 3

    Normalize the shape for diff-stable output?· Optional

    Sort keys alphabetically and drop null / empty fields so the same config always produces the same JSON.

  4. 4

    Validate against your deployment contract?

    Confirm the manifest has the required fields (apiVersion, kind, metadata.name) before forwarding downstream.