This free YAML JSON TOML converter handles the three config formats you’ll encounter most in self-hosting and homelab setups. Paste your Docker Compose file, a Traefik static config, a Hugo or Gitea TOML, or any JSON API response — and the other two panels update instantly. No upload, no server, no account.
What This YAML JSON TOML Converter Does
The YAML JSON TOML converter works entirely in your browser. All three formats are displayed side by side: edit any one of them and the other two reflect the change automatically, with a 280 ms debounce so it does not fire on every keystroke.
Key features:
- Live three-way conversion — type or paste in any panel, the other two update immediately 🔄
- ▶ Convert button — trigger conversion explicitly after a paste, without needing to type
- ✨ Format button — prettify/re-indent a panel’s content without converting to the other formats
- 📋 Copy button — copy the output of any single panel to the clipboard
- Sample configs — load a Docker Compose YAML, a Traefik static TOML, or a generic app JSON with one click
- URL hash sharing — the active panel’s content is base64-encoded into the URL fragment so you can bookmark or share a link directly to your config
- Tab key support — pressing Tab inside any textarea inserts two spaces instead of moving focus, which matters a lot for YAML and TOML indentation
- No external TOML library — the TOML parser and serializer are hand-written and bundled inline; the only external dependency is js-yaml for YAML handling
How to Use It
- Paste or type your config in any of the three panels (YAML, JSON, or TOML).
- The other two panels update automatically after a short pause. If they do not, press ▶ Convert.
- Fix any errors shown at the bottom of the source panel — the red border indicates a parse problem and the error message tells you which line is at fault.
- Click 📋 next to the format you need to copy the result to your clipboard.
- Use ✨ to reformat a panel’s content in place without triggering conversion to the other formats.
🐳 Practical Use Cases
Docker Compose to TOML — Some tools and scripts expect a TOML-based config that mirrors a Docker Compose structure. Paste your docker-compose.yml into the YAML panel and the TOML panel shows the equivalent. See Docker for beginners: containers, images, volumes, Compose for the basics of Compose files.
Traefik static config — Traefik traditionally ships with a TOML static config. This YAML JSON TOML converter lets you convert it to YAML (which Traefik also supports) or to JSON for scripting. Load the built-in Traefik sample to see how [entryPoints.web] maps to nested YAML keys.
Hugo and Gitea — Both projects default to TOML for their config files (config.toml, app.ini). If you prefer editing YAML or working with JSON tools, this YAML JSON TOML converter removes the manual translation step.
Vaultwarden / self-hosted apps — When setting up a self-hosted password manager, you often reference or adapt a Docker Compose snippet from the docs. Check the Vaultwarden Docker Compose guide for a real-world example, then use this tool to see the same config in all three formats.
OneDrive and rclone configs — The rclone config format uses INI-like syntax, but many adjacent tools use TOML. If you have been syncing cloud storage to a ZFS pool (see OneDrive sync to ZFS via Proxmox LXC), you may need to cross-reference configs between tools — this is where the YAML JSON TOML converter saves time.
⚠️ TOML Limitations to Keep in Mind
TOML is more opinionated than YAML or JSON. Some structures cannot be represented:
- Null values — TOML has no
nulltype. If your JSON containsnull, the TOML panel will show an error for that key. - Heterogeneous arrays — arrays like
[1, "two", true]are valid JSON and YAML but are not legal TOML. - Deeply nested arrays of objects — these serialize to
[[array.of.tables]]which is valid TOML, but only at a top-level path; nesting them further may not round-trip cleanly.
For JSON-heavy workflows where TOML is not the target, the YAML JSON TOML converter still works as a convenient JSON formatter and validator. You might also find the dedicated JSON Formatter and Validator useful for deeper JSON inspection.
🔒 Privacy, Ads, and Data Policy
- ✅ 100% free — no registration, no sign-up
- ✅ No data storage — inputs never leave your browser
- ✅ No ads in results — no watermarks, no tracking scripts
- ✅ Client-side only — no server, no external API calls (TOML is parsed inline)
Open Source and Self-Hosting
The tool is a single folder of three files (index.html, style.css, script.js) with zero build step. Drop it on any static host, an Nginx container, or a Cloudflare Pages site and it works immediately. Source is available on GitHub.
Browse all browser tools at vahac.com/tools/ — currently including the Subnet Calculator, Password Generator, JSON Formatter, and vCard QR Code Generator.
