Convertidor de YAML a JSON
Pega YAML a la izquierda y obtén JSON a la derecha. Se ejecuta totalmente en tu navegador — sin subida ni registro.
- Pega tu YAML en el área de texto izquierda.
- Haz clic en "Convertir a JSON". La salida aparece a la derecha.
- Copia el resultado, o haz clic en Descargar para guardar como data.json.
- Si la conversión falla, el mensaje de error apunta a la línea ofensora.
¿Qué hace?
Convierte documentos YAML 1.2 en JSON equivalente. Las mappings se vuelven objetos, las sequences se vuelven arrays, los escalares se tipan como números, booleanos, nulls o cadenas según las reglas de YAML. Anchors y aliases se resuelven durante la conversión. Los streams multi-documento (separados por `---`) se aplanan a un array de documentos.
Ejemplo
Entrada YAML:
name: Ada
tags:
- math
- logic
active: true Salida JSON:
{
"name": "Ada",
"tags": [
"math",
"logic"
],
"active": true
} Errores comunes de YAML y cómo arreglarlos
YAML es sensible al espacio en blanco, lo que es la fuente de la mayoría de los mensajes "fallo al parsear". El parser apunta a la línea y columna del fallo — estos son los patrones a buscar.
- Tabuladores en lugar de espacios. YAML 1.2 prohíbe tabuladores para indentación. Reemplaza cada tab con espacios — la mayoría de editores tienen un comando "convertir tabs a espacios".
- Niveles de indentación mezclados. Un hijo indentado con 2 espacios bajo un hermano indentado con 4 espacios fallará. Elige un ancho de indentación (normalmente 2 espacios) y úsalo consistentemente en todo el documento.
- Cadenas que parecen booleanos. En YAML 1.1, `yes`, `no`, `on`, `off` se parsean como booleanos — sorprendente en códigos de país (la trampa "NO") y cadenas de versión. Comilla el valor: `country: "NO"`. js-yaml usa por defecto YAML 1.2 donde esto está arreglado, pero entradas reales aún sufren el problema.
- Caracteres especiales sin comillas. Los valores que empiezan por `- `, `:`, `?`, `&`, `*`, `!`, `|`, `>`, `\'`, `"`, `%`, `@`, `` ` `` necesitan comillas. El patrón más seguro: comilla cualquier cadena con puntuación.
- Comilla sin cerrar. Una `"` o `\'` de cierre faltante hace que el parser trate el resto del archivo como parte de la cadena hasta la siguiente comilla — usualmente produciendo un número de línea confuso lejos del error real.
- Discordancia anchor / alias. Los aliases (`*name`) que referencian un anchor no definido (`&name`) provocan error de parseo. Verifica que cada alias tenga un anchor coincidente declarado antes en el documento.
Preguntas frecuentes
¿Esto admite peculiaridades de YAML 1.1 como el "problema de Noruega"?
No — y es intencional. Usamos js-yaml en modo YAML 1.2, donde `NO` sin comillas se parsea como la cadena "NO" en vez del booleano false. Si tienes entradas que dependen de los booleanos de YAML 1.1, comilla explícitamente antes de pegar. Mezclar las dos especificaciones en una herramienta traduciría tus datos silenciosamente mal.
¿Qué pasa con los anchors y aliases YAML?
Se resuelven durante la conversión. El JSON resultante contiene los valores duplicados como datos planos — los anchors no sobreviven en JSON porque JSON no tiene una sintaxis de referencia equivalente. Si necesitas que las referencias se preserven, JSON no es el formato objetivo correcto.
¿Puedo convertir archivos YAML multi-documento?
Sí. Los archivos YAML que contienen varios documentos separados por `---` se convierten a un array JSON, cada documento volviéndose un elemento del array. Si tu archivo es un único documento, se convierte a un único objeto o valor JSON en el nivel superior.
¿Por qué mi cadena de fecha sale en formato ISO?
YAML tiene un tipo timestamp nativo (`2025-12-31`). El parser lo lee como un Date de JavaScript, que se serializa a JSON como cadena ISO 8601. Para mantener el texto literal original, comilla el valor en tu YAML: `release: "2025-12-31"`.
¿Es seguro para configs YAML sensibles?
Sí. Todo se ejecuta en tu navegador — tu entrada se parsea y convierte por el JavaScript de esta página, sin enviarse a ningún servidor. No hay logs, ni analítica sobre la entrada, ni retención. Verifícalo en las herramientas de desarrollador: cero peticiones de red al hacer clic en Convertir.
¿Qué tan grande puede ser el archivo YAML?
Hasta el límite de memoria de tu navegador, pero el textarea empieza a sentirse lento por encima de ~10 MB de YAML. Para entradas mayores, convierte por trozos o usa la misma biblioteca (js-yaml) en línea de comandos.