Formateur et Validateur YAML

Formatez, validez et embellissez votre YAML en ligne. Met immédiatement en évidence les erreurs de syntaxe avec les numéros de ligne. Gratuit et entièrement exécuté dans votre navigateur.

Comment Utiliser

  1. Collez votre YAML dans la zone de saisie
  2. Cliquez sur «Formater et Valider» pour embellir et vérifier la syntaxe
  3. Si le YAML est invalide, un message d'erreur indiquera la ligne exacte et le problème
  4. Ajustez le sélecteur d'indentation pour contrôler l'indentation de sortie
  5. Cliquez sur «Copier» pour copier le résultat formaté, ou sur «Effacer» pour réinitialiser

Questions Fréquentes

  • Qu'est-ce que la validation YAML ?

    La validation YAML vérifie que votre document suit la syntaxe YAML correcte : indentation appropriée, pas de clés en double, types de données valides et utilisation correcte des caractères spéciaux.

  • Le formatage modifie-t-il mes données ?

    Non. Le formatage ne modifie que les espaces et l'indentation. La structure des données et les valeurs restent exactement les mêmes.

  • Quelles sont les erreurs de syntaxe YAML courantes ?

    Les erreurs courantes incluent une indentation incohérente (mélange de tabulations et d'espaces), des deux-points manquants après les clés, des chaînes non entre guillemets contenant des caractères spéciaux comme : ou #, et des clés en double.

  • Mon YAML est-il envoyé à un serveur ?

    Non. Tout le formatage et la validation se déroulent entièrement dans votre navigateur grâce à la bibliothèque js-yaml. Vos données ne quittent jamais votre appareil.

  • Quelle est la différence entre YAML et JSON ?

    YAML est un sur-ensemble de JSON qui prend en charge les commentaires, les chaînes multilignes et est moins verbeux. JSON utilise des accolades et des guillemets, tandis que YAML utilise l'indentation. YAML est couramment utilisé pour les fichiers de configuration, JSON pour les APIs.

YAML : conçu pour la lisibilité humaine

YAML (YAML Ain't Markup Language — un acronyme récursif) a été créé en 2001 avec un objectif clair : proposer un format de sérialisation de données lisible et éditable par des humains, contrairement aux formats comme XML ou aux blocs JSON imbriqués qui peuvent rapidement devenir difficiles à parcourir visuellement.

Sa particularité fondamentale est d'utiliser l'indentation pour représenter la hiérarchie des données, à la manière du Python. Pas d'accolades, pas de crochets dans la plupart des cas — la structure est visible au premier coup d'œil.

La syntaxe YAML en pratique

Un document YAML peut contenir plusieurs types de structures :

# Un commentaire — impossible en JSON
application:
  nom: MonApp
  version: "2.1.0"
  actif: true
  ports:
    - 8080
    - 8443
  base_de_données:
    hôte: localhost
    port: 5432

Les types de données reconnus automatiquement incluent les chaînes, les entiers, les flottants, les booléens (true/false, yes/no, on/off), et null. Ce comportement de typage implicite est puissant mais peut surprendre : la chaîne "yes" sans guillemets sera interprétée comme un booléen.

Erreurs de syntaxe courantes

YAML est sensible à plusieurs points qui trompent régulièrement les débutants :

Mélange tabulations/espaces

YAML interdit les tabulations pour l'indentation (contrairement à la plupart des langages). Utiliser une tabulation là où une espace est attendue produit une erreur immédiate.

Indentation incohérente

Tous les éléments d'un même niveau doivent être alignés exactement. Un décalage d'un seul espace peut changer la structure de données interprétée.

Caractères spéciaux non protégés

Les caractères :, #, {, }, [, ] ont des significations particulières en YAML. Une valeur comme valeur: texte avec : deux-points doit être entourée de guillemets.

Valeurs ambiguës

Les chaînes comme 1.0, true, null, 2024-01-15 sont interprétées comme des types non-chaînes. Ajoutez des guillemets si vous voulez conserver la valeur textuelle.

YAML dans l'écosystème moderne

YAML s'est imposé comme le format standard pour les fichiers de configuration dans de nombreux écosystèmes :

  • Docker Compose : docker-compose.yml
  • Kubernetes : manifestes de pods, services, déploiements
  • GitHub Actions / GitLab CI : pipelines CI/CD
  • Ansible : playbooks d'automatisation
  • Helm : charts Kubernetes

La validation et le formatage systématiques de vos fichiers YAML avant déploiement évitent des erreurs difficiles à diagnostiquer en production.