Un conversor YAML ↔ JSON que además revisa tu archivo
El YAML se usa sobre todo en archivos de configuración: los servicios de una aplicación, una cadena de integración continua, los ajustes de un servidor o los textos traducidos de una web. El JSON es el formato que esperan las API y muchos programas. Esta herramienta convierte de uno a otro, valida el YAML y marca cada error con su línea y su columna. Todo se procesa en tu navegador: el texto no se sube a ningún servidor.
Cómo se usa
- Elige la conversión: «YAML → JSON», «JSON → YAML» o «Formatear YAML» (reescribe el mismo archivo de forma ordenada).
- Pega el texto, pulsa «Abrir un archivo» o prueba con «Ejemplo».
- Ajusta la «Sangría del JSON» (2 espacios, 4 espacios, tabulador o «Compacto (una línea)») o la «Sangría del YAML» (2 o 4 espacios).
- Mira el estado: «YAML válido.», una lista de avisos o el error con un extracto resaltado y el botón «Ir al error».
- Cambia a «Árbol» para recorrer los datos y termina con «Copiar» o «Descargar».
YAML y JSON comparados
Los dos formatos guardan los mismos datos. El YAML usa la sangría donde el JSON usa llaves, corchetes y comillas.
| YAML | JSON obtenido |
|---|---|
servicio: web | "servicio": "web" |
replicas: 2 | "replicas": 2 |
debug: false | "debug": false |
puertos: y debajo - "8080:80" | "puertos": ["8080:80"] |
Con «Compacto (una línea)», esas líneas caben en una sola línea JSON de 67 caracteres, sin ningún espacio. En sentido contrario, la herramienta escribe YAML en estilo bloque y solo pone comillas cuando hacen falta.
Reglas básicas de sintaxis
- Tras una clave van dos puntos y un espacio:
nombre: valor. - La jerarquía se marca con la sangría, y solo con espacios.
- Cada elemento de una lista empieza por un guion y un espacio:
- valor. |conserva los saltos de línea de un texto y>los convierte en espacios;-quita el salto final y+conserva todas las líneas vacías del final.&nombredefine un ancla,*nombrela reutiliza y<<: *nombrefusiona un objeto;---separa documentos, que el JSON agrupa en un array.- Un comentario empieza por un espacio y luego
#.
Errores frecuentes y trampas
No se admiten tabuladores en la sangría: a: seguido de una línea que empieza con un tabulador se señala en la línea 2, columna 1. Una línea desplazada un espacio rompe la estructura. Un valor con dos puntos y espacio, como titulo: Nota: importante, se rechaza en la columna 13; escribe titulo: "Nota: importante".
La trampa más conocida es el «problema de Noruega»: en YAML 1.1, pais: NO se convierte en el booleano false, igual que yes, no, on y off. La herramienta sigue YAML 1.2, la versión actual, donde solo true y false son booleanos, así que NO sigue siendo el texto «NO». Como muchos programas aún leen YAML 1.1, un aviso te recomienda ponerlo entre comillas. Otros avisos detectan claves repetidas (gana el último valor) y números engañosos: el código postal cp: 08001 se queda en 8001 y version: 3.10 pasa a 3.1.
Seguridad
Nunca cargues un YAML de origen desconocido con un cargador capaz de crear objetos del lenguaje a partir de etiquetas: usa siempre el cargador «seguro» de tu lenguaje. Aquí las etiquetas no estándar solo se señalan y nunca se ejecutan, y los alias que añadirían más de 1 000 000 de nodos (el ataque «billion laughs») detienen la lectura.
Preguntas frecuentes
¿Los comentarios pasan al JSON?
No, el JSON no admite comentarios. «Formatear YAML» tampoco los conserva y sustituye cada alias por su contenido.
¿Por qué "3.10" sale entre comillas en el YAML?
Sin comillas, 3.10 se leería como el número 3,1. La herramienta entrecomilla toda cadena que parezca un número, un booleano o null.
¿Los enteros muy grandes se mantienen exactos?
Sí. 12345678901234567890 se copia cifra por cifra, sin el redondeo habitual de los navegadores.
¿Qué tamaño de archivo admite?
Hasta 20 MB. El análisis se hace en segundo plano y la página sigue respondiendo.