tamper[box]

YAML to JSON Converter

Expose Hidden Data Changes

Could valid-looking YAML change your test data? Convert it live and expose aliases, duplicate keys and unsafe numbers.

Convert YAML to JSON locally as you type. Expose duplicate keys, unsafe integers, alias cycles and presentation loss before fixtures reach a test run. Jump to: What does it mean?, How to fix it, Break it, Ask your agent.

Example A synthetic QA test suite. Edit the YAML on the left and the JSON changes with it.

Converted valid YAML to JSON. The represented data is unchanged.

Converted in this browser as the input changed. Nothing was uploaded or saved.

    Your YAML stays in this browser. A local worker parses and converts it as you type.

    No YAML tag runs code. Only the JSON-compatible schema is accepted; custom tags are refused.

    Findings

    No problems

      Converted output

      JSON

      What this result means

      Written for the example.

      • The prompt is rewritten for the current result.

      • Edit the source and the result follows automatically.

      • Comments and anchor names are not JSON data.

      • Validate the converted result against the application schema too.

      • Duplicate keys, cycles and unsafe integers are refused rather than guessed.

      • Input is bounded by size, depth, alias count and node count.

      How it works

      The page parses YAML with the JSON-compatible schema in a browser worker and rewrites JSON after each valid edit. It rejects duplicate keys, unsafe integers, cyclic aliases, unsupported tags and excessive complexity; the full method, every rule and worked examples are on docs.tamperbox.dev.

      Limits and interpretation

      A pass means the resolved YAML value fits the JSON data model and can be emitted as JSON. Comments, anchor names, aliases, scalar spelling and formatting are presentation rather than JSON values and are not preserved. Input stays in the browser and is limited to 1,000,000 characters, 80 levels, 100 aliases and 100,000 values.

      Frequently asked questions

      Does the converter execute YAML tags or embedded text?

      No. It accepts the JSON-compatible schema and refuses unsupported tags; strings are never treated as commands, templates or addresses to fetch.

      Why are aliases flattened in the JSON output?

      JSON has no anchor or alias syntax. Acyclic aliases resolve to their values, while cycles are rejected because JSON cannot represent them.

      How do I prove the conversion kept my test data?

      Convert the JSON output back to YAML, parse both ends under the same data model and deep-compare the values. Validate the JSON against the application's schema separately.

      References

      YAML 1.2.2, representation graph and RFC 8259, JSON values define the boundary used here.

      Are you an AI agent? You are in the right place.

      This page and every tool are available as plain text with their methods and limits, and the same checks run over MCP.