Convertidor y Formateador YAML ↔ JSON

Convierte entre los formatos YAML y JSON, o formatea y valida tu YAML. Detecta automáticamente el formato de entrada. Gratis y funciona completamente en tu navegador.

Cómo Usar

  1. Pega tu YAML o JSON en el área de entrada — la herramienta detecta el formato automáticamente
  2. Haz clic en 'A JSON' para convertir a JSON, o en 'A YAML' para convertir a YAML
  3. Usa 'Formatear YAML' para embellecer un documento YAML sin convertirlo
  4. Usa 'Minificar' para producir una salida JSON compacta en una sola línea
  5. Ajusta el selector de sangría para controlar la indentación de la salida
  6. Haz clic en Copiar para copiar el resultado, o en Limpiar para reiniciar

Preguntas Frecuentes

  • ¿Qué es YAML?

    YAML (YAML Ain't Markup Language) es un formato de serialización de datos legible por humanos, comúnmente utilizado para archivos de configuración, pipelines de CI/CD y manifiestos de Kubernetes. Utiliza la indentación para representar la estructura en lugar de llaves.

  • ¿Cuándo debería usar YAML en lugar de JSON?

    Usa YAML para archivos de configuración y archivos que los humanos leerán o editarán directamente, ya que admite comentarios y es menos verboso. Usa JSON para respuestas de API e intercambio de datos, ya que tiene soporte más universal y está definido de forma más estricta.

  • ¿Puede YAML representar todo lo que JSON puede?

    Sí. JSON es un subconjunto de YAML — cualquier JSON válido también es YAML válido. YAML además admite comentarios, cadenas multilínea, anclas y alias.

  • ¿Se envían mis datos a un servidor?

    No. Toda la conversión ocurre completamente en tu navegador usando la biblioteca js-yaml. Tus datos nunca abandonan tu dispositivo.

  • ¿Qué ocurre si mi entrada no es válida?

    Aparecerá un mensaje de error debajo de los botones que describe exactamente dónde falló el análisis, para que puedas localizar y solucionar el problema rápidamente.

YAML y JSON: dos formatos para el mismo propósito

Tanto YAML como JSON son formatos de serialización de datos —es decir, maneras de representar estructuras de datos (objetos, listas, valores) como texto— pero están optimizados para contextos diferentes. Entender cuándo usar cada uno evita fricciones innecesarias en los proyectos.

Cuándo elegir YAML

YAML destaca en situaciones donde los humanos leen y editan los archivos frecuentemente:

  • Archivos de configuración: docker-compose.yml, kubernetes-deployment.yaml, .github/workflows/ci.yml, ansible-playbook.yml. La posibilidad de añadir comentarios es fundamental aquí para documentar opciones y valores.
  • Proyectos de infraestructura como código: Terraform, Pulumi y CloudFormation admiten YAML para describir recursos de nube.
  • Pipelines CI/CD: GitHub Actions, GitLab CI, CircleCI y Jenkins usan YAML para definir los pasos de automatización.

Cuándo elegir JSON

JSON es superior cuando la máquina —no el humano— es el consumidor principal del dato:

  • APIs REST: JSON es el estándar de facto. Todos los lenguajes tienen parsers JSON nativos o muy optimizados.
  • Bases de datos de documentos: MongoDB, Firestore y CouchDB almacenan documentos en JSON (o variantes como BSON).
  • Configuración de herramientas de desarrollo: package.json, tsconfig.json, .eslintrc.json — archivos que los sistemas leen programáticamente.

Aspectos a tener en cuenta al convertir

Comentarios de YAML no se preservan en JSON

JSON no admite comentarios. Al convertir YAML → JSON, todos los comentarios del archivo YAML se pierden irrecuperablemente. Esto es importante si planeas volver a convertir a YAML después.

Tipos de datos especiales de YAML

YAML tiene tipos que JSON no puede representar directamente:

  • Fechas: 2024-01-15 en YAML puede interpretarse como objeto Date; en JSON sería una cadena.
  • Valores binarios: YAML admite datos binarios codificados en Base64; JSON no tiene equivalente nativo.
  • Booleanos en YAML son más permisivos: yes, no, on, off son válidos como booleanos en YAML pero no en JSON.

Claves en JSON deben ser cadenas

En YAML, las claves pueden ser de cualquier tipo (números, booleanos). En JSON, todas las claves son siempre cadenas. Al convertir, las claves no-string de YAML se convierten en su representación de cadena.

Orden de claves

JSON no garantiza el orden de las claves (aunque en la práctica muchos parsers lo preservan). YAML tampoco. Si el orden importa en tu caso de uso, documenta este comportamiento explícitamente.

Flujos de trabajo habituales

Un flujo muy común en DevOps es mantener la configuración en YAML (por sus comentarios y legibilidad) y convertirla a JSON cuando necesitas pasarla a una API o herramienta que solo acepta JSON. La conversión bidireccional también es útil para depurar: a veces es más fácil inspeccionar un documento YAML largo en formato JSON ordenado.