Por qué los equipos convierten JSON a YAML
El YAML es más fácil de leer y editar que el JSON: sin llaves, sin errores de coma final y con espacio para comentarios. Por eso se convirtió en el estándar de los manifiestos de Kubernetes, los archivos de Docker Compose, los pipelines de CI y muchas configuraciones de aplicaciones.
Este conversor genera YAML de estilo bloque con sangría de dos espacios. Las cadenas largas se mantienen en una sola línea en lugar de plegarse, y los valores que el YAML podría malinterpretar, como cadenas que parecen números o booleanos, se entrecomillan automáticamente.
JSON frente a YAML: comparación rápida
| Característica | JSON | YAML |
|---|---|---|
| Nombre completo | JavaScript Object Notation | YAML Ain't Markup Language |
| Tipo | Datos jerárquicos | Datos jerárquicos |
| Año de creación | Principios de los 2000 (RFC 4627 en 2006) | 2001 |
| Creado por | Douglas Crockford; hoy ECMA-404 y RFC 8259 | Clark Evans, Ingy döt Net y Oren Ben-Kiki |
| Estructura | Objetos y arrays anidados | Mapas y listas anidados por sangría |
| Comentarios | No | Sí, con # |
| Tipos de datos | Cadena, número, booleano, null, objeto, array | Cadenas, números, booleanos, null, fechas, listas, mapas |
| Ideal para | APIs, aplicaciones web y ajustes de apps | Configuración de Kubernetes, pipelines de CI y Docker Compose |
| Compatibilidad | Todos los lenguajes de programación | La mayoría de lenguajes mediante librerías |
| Tipo MIME | application/json | application/yaml |
Cómo convertir JSON a YAML
Paso 1: Elige el archivo JSON
Suelta un archivo .json en el conversor.
Paso 2: YAML está preseleccionado
Deja YAML como salida.
Paso 3: Convierte
El JSON se analiza y se escribe como YAML con el orden original de las claves.
Paso 4: Descarga
Guarda el archivo .yaml y añade comentarios o cambios a tu gusto.
Estilo de salida
Estilo bloque
Mapas y listas usan sangría en lugar de llaves y corchetes.
Sin plegado
Las cadenas largas se quedan en una sola línea.
Comillas inteligentes
Cadenas como "true", "1.10", "on" o "NO" se entrecomillan, para que incluso los analizadores YAML 1.1 antiguos las lean como cadenas.
Orden conservado
Las claves aparecen en el mismo orden que en el JSON.
Dónde encaja JSON a YAML
Manifiestos de Kubernetes. Convierte la salida JSON de kubectl o de generadores en YAML editable.
Pipelines de CI. Redacta configuraciones de GitHub Actions o GitLab CI a partir de plantillas JSON.
Especificaciones OpenAPI. Mantén las definiciones de API en la forma YAML, más legible.
Ajustes editados a mano. Da a quienes no programan un archivo de configuración más fácil de leer.
Añadir comentarios después de convertir
Una de las principales razones para pasar a YAML son los comentarios. El JSON no puede contenerlos, así que el archivo convertido empieza sin ninguno. Añade comentarios # encima de las claves para documentar por qué existe un ajuste; los analizadores YAML los ignoran.
Mantén una sangría coherente al editar: dos espacios por nivel y nunca tabulaciones.
Los tipos se mantienen exactamente
Los números siguen siendo números, los booleanos siguen siendo booleanos y null pasa a null. Las cadenas que podrían confundirse con otro tipo se entrecomillan, que es lo que mantiene un valor como "yes" o "0123" como cadena al volver a leer el YAML.
Los objetos y arrays vacíos se escriben en estilo en línea como {} y [], ya que el estilo bloque no puede mostrar el vacío.
- "port": 8080 pasa a port: 8080.
- "version": "1.10" pasa a version: "1.10".
- "tags": [] pasa a tags: [].
Consejos para JSON a YAML
- Valida el YAML con la herramienta de destino, ya que cada una tiene su propio esquema.
- Si el JSON es generado, consérvalo como origen y vuelve a generar el YAML en lugar de editar ambos.
- Usa YAML a JSON para comprobar que la ida y vuelta da los mismos datos.
- Divide las configuraciones muy grandes en varios archivos para facilitar la lectura.
Preguntas sobre la conversión de JSON a YAML
¿Qué sangría se usa?
Dos espacios por nivel, la convención de YAML más habitual.
¿Se partirán las cadenas largas?
No. El plegado de líneas está desactivado, así que cada cadena se queda en una línea.
¿Se mantiene el orden de las claves?
Sí, las claves aparecen en el mismo orden que en el JSON.
¿Por qué algunas cadenas van entre comillas?
Se añaden comillas donde el YAML leería de otro modo el valor como número, booleano o null.
¿El resultado puede tener comentarios?
El JSON no tiene comentarios que convertir, pero puedes añadirlos al YAML después.
¿Se sube mi JSON?
No. Todo ocurre en tu navegador.