YAML File Viewer & Validator

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.

or paste YAML
Ctrl + Enter to view · Ctrl + V anywhere
Try a sample
No upload YAML 1.2 Big files OK

How to view and validate a YAML file

  1. Open your YAML. Drop a .yaml or .yml file anywhere on the page, browse for it, paste YAML, load it from a URL or try a sample.
  2. Check the validation. The status badge shows at once if the YAML is valid. Errors are listed with line, column and a plain-English fix - click one to jump to it.
  3. Explore the data. Browse the collapsible tree with types, search keys and values, copy the path of any node, read the highlighted code view with folding, see lists of records as a table, or open the Summary for docker-compose, Kubernetes, GitHub Actions and OpenAPI files.
  4. Convert or format. Turn the YAML into JSON, TOML, .env or .properties, or reformat it with clean indentation - then copy or download the result.

Keyboard shortcuts

  • SearchCtrl + F
  • Next / previous matchEnter / Shift + Enter
  • Move in the tree↑ ↓ ← →
  • Open a fileCtrl + O
  • Download JSONCtrl + S
  • Exit full screenEsc

YAML viewer features

Real YAML 1.2 validation

A complete parser, not a regex: anchors, aliases, merge keys, tags, block scalars and multi-document streams.

Errors you can fix

Line, column, the offending line and a plain-English tip for tabs, indentation, duplicate keys and missing quotes.

Tree with types

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.

Table view

Lists of records - users, services, containers - become a spreadsheet-style table you can save as CSV for the CSV Viewer or Excel.

Code view with folding

Syntax colours, line numbers and fold arrows - errors are marked right on their line.

Smart summaries

docker-compose services, Kubernetes resources, GitHub Actions jobs and OpenAPI endpoints in clean tables.

Convert and format

YAML to JSON, TOML, .env and .properties, or tidy the YAML itself - comments are kept when formatting.

Compare two files

See which keys were added, removed or changed between two versions of a config.

Private by design

Parsing happens in your browser. Secrets in your configs never touch a server.

Fix the most common YAML errors

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.

ErrorWhat it meansHow to fix it
Tabs as indentationA tab character starts the line. YAML only allows spaces.Replace tabs with spaces. Most editors have a "convert indentation to spaces" command.
Bad indentationItems of the same list or mapping start in different columns.Line them up exactly - 2 spaces per level is the common style.
Duplicate keyThe same key appears twice in one block, so one value would be lost.Rename or merge the two entries.
Missing quote or bracketA ", ', ] or } was opened but never closed.Close it on the same line, or remove the stray character.
Unexpected characterA value starts with @, `, %, * or &.Wrap the value in quotes: email: "@team".
Colon in a valuetime: 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.

YAML, JSON, TOML and .env compared

All four store the same kind of data - keys, values and lists.

They just trade readability for strictness in different ways.

  • YAML - indentation instead of brackets, comments allowed, anchors to reuse blocks. Loved for configs: Docker, Kubernetes, Ansible, CI pipelines.
  • JSON - strict and compact, the language of APIs. Every JSON file is also valid YAML 1.2. Explore it in the JSON Viewer.
  • TOML - INI-like sections, popular for Rust, Python and Hugo configs. It has no null value, so empty YAML keys must get a value first.
  • .env - flat KEY=value pairs read by Docker and most frameworks. Nested YAML keys become SERVER_PORT=8080.

Need XML instead? The XML Viewer handles feeds, sitemaps and SOAP files, and the CSV Viewer opens tabular data.

About YAML files

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.

When an online YAML viewer helps

  • A pipeline failed - find the line with the bad indent in seconds.
  • A config from someone else - get the big picture from the tree and summary before editing.
  • No editor at hand - Chromebooks, tablets and locked-down work PCs.
  • Moving between formats - turn YAML into JSON for an API, or into .env for a container.

Just want the raw text with line numbers? The TXT Viewer opens any text file. Browse all file viewers for documents, images and archives.

Frequently Asked Questions

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.

Guides & Tutorials

All 14 guides
Guide How to Tell What Format an Image File Is (5 Easy Ways) Read the guide Guide How to Open ZIP, RAR, 7Z & TAR.GZ Files Online (Without Installing Anything) Read the guide Comparison PNG vs JPG: Which Image Format Should You Actually Use? Read the guide