Conversor JSON ↔ YAML

Convierte JSON a YAML o YAML a JSON en tu navegador. Conserva los números grandes, pone comillas a valores como yes o 1.0 y admite anclas, claves de fusión y varios documentos.

¿Qué es YAML?

YAML es un formato de configuración que usa sangría en lugar de llaves. Lo usan Docker Compose, Kubernetes, GitHub Actions y el application.yml de Spring Boot. YAML 1.2 es un superconjunto de JSON, así que ambos se convierten sin pérdidas en los dos sentidos; la diferencia está sobre todo en la legibilidad.

Cómo usarlo

  1. Elige el sentido: JSON → YAML o YAML → JSON.
  2. Pega el contenido. Con la conversión automática activada, el resultado aparece mientras escribes, y los errores de sintaxis indican la línea y la columna exactas.
  3. Elige sangría de 2 o 4 espacios y copia o descarga el resultado. «Usar el resultado como entrada» lo convierte de vuelta en el otro sentido.

Ejemplo

Este JSON:

{"name":"web","replicas":3,"ports":[80,443],"env":{"DEBUG":"yes","VERSION":"1.10"}}

se convierte en:

name: web
replicas: 3
ports:
  - 80
  - 443
env:
  DEBUG: "yes"
  VERSION: "1.10"

Fíjate en las comillas de "yes" y "1.10". Sin ellas, muchas herramientas YAML leerían yes como el booleano true y 1.10 como el número 1.1, cambiando tu configuración sin avisar.

Preguntas frecuentes

¿Por qué algunos valores van entre comillas?

Siempre se ponen comillas a los textos que YAML podría malinterpretar: palabras como yes, no, on y null, cualquier cosa que parezca un número o una fecha, y textos que contienen : o #. Un ejemplo famoso es el código de país NO (Noruega), que los analizadores YAML antiguos convierten en false.

¿Se conservan exactos los números grandes?

Sí, en los dos sentidos. Un valor como 9007199254740993 o 1280.50 se escribe tal cual aparece en el original. Muchos conversores en línea pasan los números por JavaScript y redondean los IDs grandes a 9007199254740992.

¿Qué pasa con los comentarios, las anclas y los documentos múltiples?

JSON no tiene comentarios, así que los comentarios de YAML se eliminan. Las anclas y los alias (&base, *base) y las claves de fusión (<<: *base) se expanden a sus valores. Un archivo con varios documentos separados por --- se convierte en un array JSON.

¿Cómo se tratan las fechas?

Las fechas como 2024-01-01 se mantienen como el mismo texto en JSON. No se convierten a otro formato ni a otra zona horaria.