Resumen / Desarrollo y código / Conversor YAML ↔ JSON
Desarrollo y código 100% en el navegador y sin conexión

Conversor YAML ↔ JSON

Convierte YAML a JSON y JSON a YAML en el navegador. Resuelve varios documentos, anclas y alias, y muestra los errores con línea y columna.

Pega o escribe tu entrada; el resultado aparece al instante y los errores se muestran debajo.

Tus archivos y datos nunca salen de tu navegador: no se sube nada.

Opciones

Lee YAML 1.2. yes, no, on y off siguen siendo cadenas, las fechas siguen siendo cadenas y los números octales necesitan 0o. Los comentarios se pierden. Los documentos separados por --- forman un array JSON. Los enteros mayores que 2^53 pierden precisión y .nan y .inf pasan a null. Entrada máxima: 2.000.000 de caracteres.

Convertir YAML a JSON sin perder los valores con anclas

Un values.yml de Helm, un workflow de GitHub Actions o un docker-compose.yml: casi todo lo que se configura hoy está en YAML, y casi toda API responde en JSON. Para pasar de un formato a otro, pega el texto en la caja de la izquierda y lee el resultado a la derecha.

La lectura sigue YAML 1.2. En esa versión yes, no, on y off son cadenas normales, no booleanos, y una fecha como 2001-12-14 sigue siendo una cadena. Los octales necesitan el prefijo 0o: 0o17 vale 15 y 017 vale 17.

Las anclas (&nombre), los alias (*nombre) y las claves de fusión (<<: *nombre) se resuelven, así que el JSON lleva los valores ya copiados. Los comentarios no existen en JSON y se descartan.

Archivos con varios documentos

Si --- separa varios documentos, el resultado es un array JSON con una entrada por documento, y la línea de estadísticas indica cuántos hay ("3 documentos"). Con un solo documento obtienes un objeto o una lista sin envolver. Los documentos vacíos del final se ignoran.

Pasos para convertir una configuración

  1. Elige el sentido con los botones "YAML → JSON" o "JSON → YAML". Cada uno trae un ejemplo hasta que escribas tu propio texto.
  2. Pega el texto. La conversión empieza 300 milisegundos después de la última tecla. La primera vez se carga la biblioteca YAML y puede tardar un poco.
  3. Ajusta las opciones: sangría del JSON de 2 espacios, 4 espacios o minificado, y "Ordenar claves alfabéticamente". En la salida YAML también eliges la sangría y si las líneas largas se pliegan a 80 caracteres.
  4. Pulsa "Copiar" o "Descargar". El archivo se llama converted.json o converted.yaml.

Cadenas que parecen números, booleanos o null

Al pasar de JSON a YAML, la cadena "123" no debe volverse el número 123, así que sale entre comillas. Pasa lo mismo con "null", "true", "~" y la cadena vacía. También llevan comillas "yes", "no", "on", "off" y todo lo que empiece como una fecha, porque los analizadores de YAML 1.1 los leen como booleanos o marcas de tiempo. Las cadenas con saltos de línea se escriben como bloques con |.

Errores, avisos y valores que JSON no admite

Si el YAML está mal, aparece el mensaje de la biblioteca con la línea y la columna, por ejemplo cuando se usa un tabulador como sangría. Dos claves iguales en un mapa son un error, no una sobrescritura silenciosa, y un alias sin ancla previa también. Una etiqueta desconocida como !custom solo genera un aviso y el valor queda como texto.

YAML admite .nan, .inf y -.inf; JSON no. La herramienta escribe null y dice cuántos valores sustituyó. Los enteros mayores que 2^53 se redondean al número más cercano que guarda JavaScript, con un aviso. Si un texto JSON repite una clave, vale la última. Una entrada de más de 2.000.000 de caracteres se rechaza con un mensaje.

Qué ocurre con tus datos

No se sube nada. La biblioteca YAML es un script de este sitio que el navegador descarga una vez, en la primera conversión. Después todo se hace en la pestaña. "Copiar" usa el portapapeles y "Descargar" guarda un archivo desde el navegador. En el panel de red no verás ninguna petición con tu texto.

Preguntas frecuentes (FAQ)

La herramienta lee YAML 1.2, donde solo true y false son booleanos. Los analizadores de YAML 1.1 leen yes, no, on y off como booleanos, así que programas antiguos pueden dar otro resultado.