Outils Nettoyage

Formateur et Validateur YAML en ligne gratuit

Formatez, validez et embellissez du YAML dans votre navigateur, et convertissez entre YAML et JSON. Compatible avec les configurations Docker Compose, Kubernetes et GitHub Actions. Rien n'est jamais envoyé à un serveur.

Toute l'analyse et la conversion se font localement dans votre navigateur. Votre YAML et votre JSON ne sont jamais envoyés, stockés ni enregistrés.

Qu'est-ce que YAML ?

YAML (YAML Ain't Markup Language) est un format de sérialisation de données lisible par l'humain, conçu pour être facile à écrire et à lire. Sa syntaxe épurée, fondée sur l'indentation, a remplacé le XML dans de nombreux fichiers de configuration modernes, alimentant des outils comme Docker Compose, Kubernetes, GitHub Actions, Ansible et Helm. YAML est aussi un sur-ensemble de JSON : tout document JSON valide est également un YAML valide, ce qui rend la conversion entre les deux formats simple et sans perte pour la plupart des données de configuration courantes.

Guide de la syntaxe YAML

key: value Scalaires — une simple paire clé/valeur. Les chaînes multilignes utilisent | (littéral, conserve les sauts de ligne) ou > (replié, joint les lignes).
- item Listes — chaque élément sur sa propre ligne, précédé d'un tiret et d'une espace.
parent: child: x Dictionnaires imbriqués — expriment la hiérarchie uniquement par l'indentation.
# comment Commentaires — tout ce qui suit un # est ignoré par l'analyseur.
null / true / false Valeurs spéciales — null, true et false sont reconnues comme des valeurs typées, pas comme des chaînes.
&anchor / *alias Ancres et alias — définissez un nœud une fois avec &anchor et réutilisez-le avec *alias.
Important : YAML n'autorise pas les tabulations pour l'indentation, seulement les espaces. Une seule tabulation rend tout le document non valide.

YAML ou JSON : lequel choisir

YAML

Utilisez YAML pour les fichiers de configuration écrits et modifiés à la main. Il prend en charge les commentaires, est plus lisible et constitue le standard pour Docker Compose, Kubernetes, GitHub Actions, Ansible et Helm.

JSON

Utilisez JSON pour les API et les données en transit. Il s'analyse plus vite, n'a aucune ambiguïté de type et est le format des API REST, de package.json et de tsconfig.json.

Erreurs YAML courantes et comment les corriger

  1. Utiliser des tabulations au lieu d'espaces pour l'indentation — remplacez chaque tabulation par des espaces, car YAML interdit les tabulations.
  2. Indentation incohérente — conservez le même nombre d'espaces à chaque niveau d'imbrication dans tout le document.
  3. Une chaîne contenant un deux-points sans guillemets — mettez des valeurs comme "12:30" ou "http://example.com" entre guillemets.
  4. Booléens ambigus — des valeurs comme yes, no, on et off sont interprétées comme true/false ; mettez-les entre guillemets si vous voulez les mots littéraux.
  5. Caractères spéciaux dans une valeur sans guillemets — des caractères comme @, # et { nécessitent d'entourer la valeur de guillemets.

Foire aux questions

Non. YAML interdit strictement les caractères de tabulation pour l'indentation : vous devez utiliser des espaces. C'est l'une des causes les plus fréquentes des erreurs « YAML non valide ». Si votre éditeur insère des tabulations, configurez-le pour les convertir en espaces (généralement 2 par niveau). Le formateur de cette page produit toujours des espaces : passer votre fichier par cet outil corrige donc automatiquement les tabulations involontaires.

Les deux introduisent des chaînes multilignes mais gèrent les sauts de ligne différemment. Le scalaire de bloc littéral | conserve les sauts de ligne exactement tels qu'ils sont écrits, chaque ligne restant sur sa propre ligne — idéal pour des scripts ou du texte formaté. Le scalaire de bloc replié > joint les lignes avec des espaces, réduisant le bloc à une seule ligne tout en traitant les lignes vides comme des sauts de paragraphe — utile pour un long texte que vous voulez retourner à la ligne dans la source mais stocker sur une seule ligne.

Oui. Depuis YAML 1.2, tout document JSON valide est aussi un document YAML valide, car la syntaxe « flow » de YAML utilise les mêmes accolades, crochets et règles de guillemets que JSON. Vous pouvez donc coller du JSON directement dans un analyseur YAML et cela fonctionnera, ce qui rend la conversion entre les deux formats fiable — c'est exactement ce que font les onglets YAML vers JSON et JSON vers YAML de cette page.

Les analyseurs YAML interprètent une série de mots — yes, no, on, off, true, false — comme des valeurs booléennes. Le scalaire non entre guillemets yes est donc lu comme le booléen true et sérialisé ainsi en JSON. Si vous avez besoin de la chaîne littérale « yes » (par exemple un code pays ou un champ réponse), mettez-la entre guillemets : answer: "yes". Les guillemets forcent l'analyseur à la conserver comme texte au lieu de la convertir en booléen.