If you keep configuration in YAML and hand it to something that wants JSON, the conversion happens constantly — in CI, in a Dockerfile step, in a Kubernetes manifest, in somebody's terminal. The usual answer is to paste the file into a converter website, which means the config leaves your machine.
Full disclosure: I work on OnePassApps. Its Data Studio has a YAML tool that does both directions in the browser tab, and the page describes itself as "View and transform CSV, JSON, and YAML locally in this browser tab."
What the YAML tab actually gives you
The panel is three steps, the same shape as the rest of the Studio:
- 01 Source — "Drop a data file, or browse JSON or YAML · or paste it in Source". A file or a paste; either way the input never goes to a server.
- 02 Options — two directions, JSON to YAML and YAML to JSON, with the size note "JSON input is limited to 2 MiB."
- 03 Result — "Format, size and line count appear here after the tool runs."
The two directions are separate buttons, and the action button changes with the direction you pick: Convert JSON to YAML when JSON is the input, Convert YAML to JSON when YAML is the input.
What it produced when I ran it
I pasted a four-field JSON object — name, studios, free, and an array of two tags — and pressed Convert JSON to YAML. The result step reported:
Generated YAML 7 lines · 68 B · from Pasted JSON with a Download YAML button under it. The YAML block itself was rendered line by line, numbered 1 to 7.
Then I switched the option to YAML to JSON, pasted the equivalent YAML, and pressed Convert YAML to JSON:
Generated JSON 9 lines · 103 B · from Pasted YAML with a Download JSON button. The line count went up because the YAML array became JSON array syntax with its own line — which is the sort of thing you want to see before you commit the output, not after.
Both directions are reversible and both report the format, the line count and the size, so you can tell an empty conversion from a real one at a glance.
Why it matters for config
YAML is the format humans edit, JSON is the format most tools consume, and every project that uses both ends up with a conversion step somewhere in the pipeline. A few cases where keeping the conversion in the tab is the right call:
- The file has a secret in it. A staging config with a database password or an API key does not need to sit on somebody else's server for thirty seconds. Convert it locally and the secret stays local.
- You want to see the diff. YAML to JSON and back changes the shape — quoting, inline maps, indentation of lists. Doing the round trip in a tab next to your editor shows you what actually changed before you overwrite the original.
- You are checking what a tool will read. The result step gives you the line count and byte size of what was parsed. If a file you expected to be seven lines comes back as one, you know the parse failed before you ship it.
Where it is not the answer
- The file is big. The JSON side is capped at 2 MiB, and the rest of the Studio's source box takes CSV, TSV, JSON or YAML up to 20 MiB. Past that, use a local command-line tool.
- You need a schema check, not a conversion. This converts syntax. It does not tell you the shape is wrong — the Studio's Validator tab does that, and it reports the line and column of a mistake.
- The conversion has to run on a schedule. A tab is for a one-off. A pipeline is a pipeline.
The rest of the Studio
The YAML tool sits next to eleven other tools on the same page: CSV Viewer, Sort / filter, Columns, Duplicates, Merge, Split, To JSON, Formatter, Validator and To CSV. So you can clean, merge, split and de-duplicate the rows first and convert last, instead of moving the data between sites.
The page is plain about where the work happens: "Nothing leaves this tab." and "Processing stays in this browser."
It is free to use right now. The plan block on the page reads Standard is free right now, $0 / month, 100,000 credits every 30 days · No end date set · No card required, with no automatic paid subscription.
How these browser-local tools work in general is written up in the app's own guides at app.onepassapps.com/guides.
Disclosure: I work on OnePassApps. The behaviour above is what the tools do today; limits and wording may change.
