Compare this file with another YAML file, key by key. Formatting, comments and key order are ignored - only real value changes are listed.
Open any .yaml or .yml file to validate it, browse it as a tree and convert it to JSON, TOML or .env - right in your browser. Errors come with the exact line and a plain-English fix, and config files like docker-compose or Kubernetes manifests get a smart summary. Working with other data? Try the JSON Viewer, the XML Viewer or the Plist Viewer for Apple settings files.
Something went wrong. Please try again.
Still having trouble? Please contact us and we'll be happy to help!
Compare this file with another YAML file, key by key. Formatting, comments and key order are ignored - only real value changes are listed.
A complete parser, not a regex: anchors, aliases, merge keys, tags, block scalars and multi-document streams.
Line, column, the offending line and a plain-English tip for tabs, indentation, duplicate keys and missing quotes.
Expand and collapse any level, see str, int, bool and null at a glance, and copy the path of any node like spec.containers[0].image.
Lists of records - users, services, containers - become a spreadsheet-style table you can save as CSV for the CSV Viewer or Excel.
Syntax colours, line numbers and fold arrows - errors are marked right on their line.
docker-compose services, Kubernetes resources, GitHub Actions jobs and OpenAPI endpoints in clean tables.
YAML to JSON, TOML, .env and .properties, or tidy the YAML itself - comments are kept when formatting.
See which keys were added, removed or changed between two versions of a config.
Parsing happens in your browser. Secrets in your configs never touch a server.
Most broken YAML files fail for the same handful of reasons.
The viewer names the problem for you, and this table shows how to fix each one.
| Error | What it means | How to fix it |
|---|---|---|
| Tabs as indentation | A tab character starts the line. YAML only allows spaces. | Replace tabs with spaces. Most editors have a "convert indentation to spaces" command. |
| Bad indentation | Items of the same list or mapping start in different columns. | Line them up exactly - 2 spaces per level is the common style. |
| Duplicate key | The same key appears twice in one block, so one value would be lost. | Rename or merge the two entries. |
| Missing quote or bracket | A ", ', ] or } was opened but never closed. | Close it on the same line, or remove the stray character. |
| Unexpected character | A value starts with @, `, %, * or &. | Wrap the value in quotes: email: "@team". |
| Colon in a value | time: 10:30 am or title: Note: read me confuses the parser. | Quote the value: title: "Note: read me". |
A sneaky one: on, yes and no were booleans in old YAML 1.1 tools. This viewer follows YAML 1.2, where they are plain strings - quote them if an older tool must read the file.
All four store the same kind of data - keys, values and lists.
They just trade readability for strictness in different ways.
SERVER_PORT=8080.Need XML instead? The XML Viewer handles feeds, sitemaps and SOAP files, and the CSV Viewer opens tabular data.
YAML stands for "YAML Ain't Markup Language".
It is a human-friendly data format built around indentation, and it runs much of modern DevOps.
You will find it in docker-compose.yml, Kubernetes manifests, Helm charts, GitHub Actions and GitLab CI pipelines, Ansible playbooks, OpenAPI specs and countless app settings files. Static site generators also put YAML "front matter" at the top of Markdown pages - open those in the Markdown Viewer.
Just want the raw text with line numbers? The TXT Viewer opens any text file. Browse all file viewers for documents, images and archives.
Drop the .yaml or .yml file onto this page, click to browse, paste the YAML, or load it from a URL. It is validated instantly and opens in a collapsible tree, with a highlighted code view one click away.
Nothing is installed and nothing is uploaded.
Every file is checked against the YAML 1.2 spec as it opens. Each problem is listed with its line and column, a plain-English explanation and a tip - tabs used for indentation, wrong indentation, duplicate keys, unclosed quotes or brackets.
Click an error to jump to that line in the code view.
Yes. Open the Convert tab and pick JSON (pretty or minified), TOML, .env or Java .properties, or reformat the YAML itself with 2 or 4 space indentation and optional sorted keys.
Copy the result or download it as a file. Anchors and merge keys are resolved in the output. To explore the JSON afterwards, open it in the JSON Viewer.
Yes. The viewer uses a full YAML 1.2 parser, so anchors (&name), aliases (*name), merge keys (<<), tags, block scalars (| and >) and multi-document files separated by --- all work.
Each document gets its own branch in the tree, and custom tags like CloudFormation !Ref are shown as text.
Yes, and it recognises them automatically. A docker-compose file gets a services table with images, ports and dependencies, and Kubernetes manifests get a list of resources with replicas, containers and ports.
GitHub Actions workflows get their triggers and jobs, and OpenAPI specs get a list of every endpoint.
No. The file is parsed by your own browser in a background worker and never leaves your device, so it is safe for configs that contain hostnames or secrets.
Recent files are only remembered if you switch that option on, and then only in this browser.
None - both extensions hold exactly the same format. .yaml is the official recommendation, while .yml is common in older tools and projects like docker-compose.yml and GitHub workflows.
This viewer opens both, plus YAML pasted as text.
Files of 50 MB and more open fine, because parsing runs in a background worker and only the rows on screen are drawn in the tree and code views.
Above 20 MB you get a heads-up, since very large files need a lot of memory. The hard limit is 200 MB.