Input (XML)
<server>
<host>localhost</host>
<port>8080</port>
</server>XML → YAML converts hierarchical XML markup into clean, indentation-based YAML. Elements become mapping keys, nested elements become nested mappings, repeated sibling elements become sequences, and attributes are preserved (commonly under a dedicated key). The result is far easier to read and edit than the original tag soup, which is handy when migrating legacy XML config to YAML-based tooling.
XML (eXtensible Markup Language) is a verbose, tag-based markup language used for documents and data interchange. YAML (YAML Ain't Markup Language) is a concise, human-readable serialization format that relies on indentation instead of closing tags. This converter walks the XML tree and re-expresses each node as YAML mappings and sequences, trimming the syntactic noise while keeping the data hierarchy intact.
The main file is the entry point for each run.
Use the Input panel to pipe standard input to your program when it needs data.
Run sends your code to a fresh hosted runtime and streams the result into the output panel.
Your draft stays in this browser, and Share creates a separate snapshot link.
<server>
<host>localhost</host>
<port>8080</port>
</server>server:
host: localhost
port: 8080<roles>
<role>admin</role>
<role>user</role>
</roles>roles:
role:
- admin
- user<user id="1" active="true">
<name>Ada</name>
</user>user:
"@id": "1"
"@active": "true"
name: Ada<config>
<database>
<host>db.local</host>
<port>5432</port>
</database>
</config>config:
database:
host: db.local
port: 5432<book lang="en">
<title>XML Guide</title>
<price>29.99</price>
</book>book:
"@lang": en
title: XML Guide
price: "29.99"<status>
<online/>
<message>OK</message>
</status>status:
online: null
message: OK<users>
<user>
<id>1</id>
<name>Ada</name>
</user>
<user>
<id>2</id>
<name>Linus</name>
</user>
</users>users:
user:
- id: "1"
name: Ada
- id: "2"
name: LinusThe editor uses Monaco, the engine behind VS Code, with language-aware editing tools and familiar keyboard controls.
Paste XML markup; the converter walks the element tree.
Elements become mapping keys; nested elements become nested mappings.
Repeated sibling elements collapse into a YAML sequence.
Attributes are preserved, commonly grouped under a dedicated key.
Element text content maps to scalar values.
Closing tags vanish, replaced by indentation.
The XML is parsed in-browser; your markup never leaves the page.
No server round-trip for legacy config migration.
Great for trimming verbose XML config down to readable YAML.
Check how repeated tags fold into lists before adopting the output.
Output
YAML output