Convertidor de YAML a JSON
Convierte datos YAML a JSON. Transforma al instante en tu navegador estructuras escritas en YAML —manifiestos de Kubernetes, docker-compose.yml, archivos de configuración de CI— a un formato que herramientas exclusivas de JSON como jq puedan procesar.
Consejos de uso
- Pega directamente un manifiesto de Kubernetes o un docker-compose.yml para visualizar su estructura como JSON, de modo que herramientas de línea de comandos como jq, que solo entienden JSON, puedan consultarlo.
- Los valores sin comillas que empiezan con un cero a la izquierda, como códigos postales o números de teléfono, se interpretan como números y pierden ese cero inicial; pon siempre comillas a los valores que quieras conservar como texto.
- El YAML complejo que usa anclas (`&`), alias (`*`) o escalares de bloque (`|`/`>`) no es compatible. Reescríbelo en una forma más simple antes de pegarlo.
- Desmarca "Formato legible" para obtener un JSON en una sola línea sin saltos de línea, útil al pegarlo en el cuerpo de una solicitud a una API donde no se quieren saltos de línea.
Preguntas frecuentes
A propósito — Por qué los archivos de configuración se escriben en YAML pero las herramientas piden JSON
YAML se usa ampliamente para archivos de configuración que las personas editan directamente —Kubernetes, docker-compose, flujos de trabajo de GitHub Actions, playbooks de Ansible— gracias a su legibilidad: permite comentarios y las comillas son en su mayoría opcionales. JSON, en cambio, tiene una especificación pequeña y sin ambigüedades, fácil de procesar mecánicamente por los programas, lo que lo ha convertido en el formato estándar para el intercambio de datos de APIs y herramientas de línea de comandos como jq.
La conversión de YAML a JSON tiende un puente sobre esta brecha entre "las personas escriben YAML, las herramientas piden JSON". Los manifiestos de Kubernetes en particular pueden llegar a cientos de líneas, y `grep` por sí solo pronto encuentra sus límites al buscar un valor concreto. Al convertir primero a JSON y consultarlo con jq, puedes extraer exactamente el valor que necesitas con una ruta como `.spec.containers[].image`.
Dicho esto, la especificación completa de YAML (YAML 1.2) es enorme y cubre funciones avanzadas como la reutilización de valores mediante anclas y alias, flujos multidocumento y escalares de bloque para cadenas multilínea. Esta herramienta omite deliberadamente toda esa superficie y se centra en el "subconjunto común" de mapas, secuencias y escalares básicos que aparece en la práctica, manteniendo así una implementación simple sin dependencias externas.