Saltar al contenido
DeveloperTools

JSON a YAML

Privado

JSON

YAML

Sobre esta herramienta

Pega JSON y léelo como YAML limpio en estilo bloque mientras escribes —el formato de los manifiestos de Kubernetes, los ficheros de Docker Compose, los workflows de GitHub Actions y los values de Helm— o cambia el sentido y convierte YAML en JSON. Los objetos dentro de listas empiezan en la línea del guion, las cadenas de varias líneas se convierten en bloques | legibles y una secuencia de valores JSON, como un log NDJSON, pasa a ser un documento YAML por valor, separados por ---.

Los tipos se conservan en los dos sentidos. Una cadena JSON que un lector YAML tomaría por otra cosa —"true", "8080", "02108", "1.10", "on", "no"— se escribe entre comillas, así que vuelve como la misma cadena tanto con un lector YAML 1.1 como con uno 1.2. Al leer YAML, los valores sin comillas se interpretan con el esquema core de YAML 1.2 que usan los analizadores actuales, los valores entre comillas siempre son cadenas y las anclas, los alias y las claves de fusión << se expanden. Los números se copian tal como están escritos, así que un ID de 20 dígitos no pierde ninguno.

Los errores se indican por línea y columna con el texto problemático subrayado, y el último resultado correcto sigue visible debajo. La parte JSON acepta lo que trae el JSON escrito a mano o sacado de un log —comentarios, comas finales, comillas simples, claves sin comillas, un payload escapado dentro de una cadena— y señala cada concesión bajo la entrada, junto con las claves declaradas dos veces.

Nada de lo que pegas se transmite. La página es HTML estático y los dos analizadores se ejecutan en tu pestaña, así que puedes convertir aquí manifiestos con secretos, hosts internos o datos de clientes.

Preguntas frecuentes

¿Se sube mi JSON o mi YAML a algún servidor?

No. La conversión es JavaScript que se ejecuta en tu navegador y no hay ningún endpoint al que enviarla. Puedes desconectarte de la red después de cargar la página y sigue funcionando, así que es seguro usarla con secrets de Kubernetes y ficheros de configuración con credenciales.

¿Por qué algunas cadenas salen entre comillas en el YAML?

Porque YAML decide el tipo de un valor por su aspecto. Sin comillas, "8080" volvería como número, "1.10" como el número 1.1, y "on" o "no" como booleanos en los lectores YAML 1.1 que todavía usan muchas herramientas. Cualquier cadena que cambiaría de tipo, o que contiene sintaxis YAML como ": " o " #", se escribe entre comillas, simples o dobles según elijas en la barra de herramientas. El resto queda sin comillas, para que el resultado se lea como un fichero escrito a mano.

¿Cómo se escriben las cadenas de varias líneas?

Como bloques literales con |, que conservan todos los saltos de línea: | cuando la cadena termina en salto de línea y |- cuando no. Una cadena que un bloque no puede reproducir exactamente —una cuya primera línea empieza por espacio, una con líneas de solo espacios o varios saltos finales, o una con retornos de carro u otros caracteres de control— se escribe entre comillas dobles con escapes.

¿Cómo trata YAML a JSON yes, no, las fechas y los ficheros con varios documentos?

Sigue YAML 1.2, la versión que usan por defecto los analizadores actuales: solo true y false son booleanos, así que yes, no, on y off siguen siendo cadenas, y una fecha como 2026-10-03 también, porque JSON no tiene tipo fecha. Los números hexadecimales y octales como 0x1F y 0o17 pasan a decimal, y .inf y .nan se convierten en null porque JSON no puede representarlos. Un fichero con varios documentos se convierte en un array JSON con un elemento por documento.

¿Qué no admite?

Los comentarios, porque JSON no tiene dónde guardarlos: se descartan al pasar de YAML a JSON. Las claves complejas escritas con "?" se rechazan, y las etiquetas personalizadas distintas de !!str se ignoran. De JSON a YAML nunca se crean anclas, así que una sección repetida en el JSON se escribe completa cada vez.

¿Es realmente gratis?

Sí, sin cuenta y sin límite de uso. El sitio se financia con anuncios colocados alrededor de la herramienta, nunca dentro de tu área de trabajo.

Flechas para moverte, Enter para abrir, Esc para cerrar