YAML Validator
Drop any .yaml or .yml file to instantly check its structure. Validates syntax, flags tab indentation, detects duplicate keys, reports nesting depth, previews top-level keys, and supports multi-document files. Nothing leaves your browser.
YAML File
Drop your YAML file here
or
Supports .yaml and .yml files up to 50 MB
⛔
Wrong file type — only .yaml or .yml files are supported. You dropped a file.
Validation Errors
Warnings
✓ Valid YAML
Top-level Keys
Structure Preview (first document)
How It Works
1
Drop your YAML fileDrag it onto the drop zone or click "browse to select a file". Supports .yaml and .yml files up to 50 MB.
2
Deep structure analysisParses the full YAML document, checks syntax, scans for tab characters (not allowed in YAML indentation), detects duplicate mapping keys, and measures nesting depth.
3
Review the reportGet a pass/fail result plus full stats: document count, key count, max nesting depth, file size, line count, and a live structure preview of the first document.
What Gets Validated
- Syntax errors — full parse using the js-yaml engine, reporting the exact line and column of any syntax failure.
- Tab indentation — YAML forbids tab characters for indentation. Every offending line is flagged with its line number.
- Duplicate keys — detects repeated mapping keys at every level of nesting, which causes silent data loss in most parsers.
- Multi-document files — counts
---document separators and validates each document independently. - BOM detection — flags a UTF-8 byte order mark that can confuse some YAML parsers.
- Null bytes — detects binary content or wrong encoding that would prevent valid parsing.
- Empty file — catches completely blank files before attempting a parse.
- File statistics — reports document count, total keys, max nesting depth, top-level key count, file size, and line count.
- Structure preview — renders the top-level keys of the first document with their value types so you can visually confirm the parse is correct.
🔒 Privacy & Security
All validation is performed locally using the Web File API and the FileReader API. Your YAML data is never sent to a server. Suitable for CI configs, secrets files, Kubernetes manifests, or any private configuration content.
