Open Tool
YAML diff for config reviews

YAML Diff Tool
without reorder noise.

YAML config drift is hard to review when service blocks move around or deployment values are nested several levels deep.

DiffViewr parses YAML as configuration, aligns Target B to the structure of Template A, and highlights the real changes without treating duplicate keys as acceptable parser behavior.

compose.staging.ymlTemplate A
YAML
1
2
3
4
5
6
7
8
9
10
11
12
services:  api:    image: ghcr.io/acme/payments-api:1.8.2    ports:      - "8080:8080"    environment:      LOG_LEVEL: info      FEATURE_AUDIT: "true"      REDIS_URL: redis://redis:6379    deploy:      replicas: 2  worker:
Nested mappings

Service, environment, and deploy blocks stay scoped so repeated keys in different objects remain valid.

Strict duplicates

Duplicate keys inside the same YAML mapping are blocked before comparison.

Reviewable output

Target B can be copied back with key order aligned to the template.

FAQ

YAML comparison details

Does DiffViewr support YAML duplicate keys?

It detects duplicate keys within the same YAML mapping and treats the file as invalid. Same key names in different nested mappings are valid.

Are YAML arrays compared as duplicate values?

No. Duplicate values inside YAML lists are allowed. The duplicate-key rule only applies to mapping keys.

Are comments and anchor syntax preserved in the aligned output?

The parser can read standard YAML structures, but the aligned output is normalized config text. Source comments and exact anchor syntax should not be treated as preserved formatting.

Can I compare Kubernetes or Docker Compose YAML?

Yes for single YAML documents that parse as mappings or lists. Multi-document streams are not the intended input for this comparer.