Convertisseur JSON vers YAML

Collez du JSON et obtenez un YAML propre pour vos manifestes Kubernetes, Docker Compose, GitHub Actions ou tout autre fichier de configuration. Les deux volets restent modifiables et synchronisés.

Mis à jour le
Indentation YAML
Indentation JSON
Ouvrir un fichier

Les deux volets sont modifiables : changez l'un, et l'autre se met à jour instantanément.

Vos données ne quittent jamais votre ordinateur. Tout le traitement se fait localement dans votre navigateur.

Comment utiliser : JSON vers YAML

  1. Collez du JSON dans le volet JSON, ouvrez un fichier .json, ou cliquez sur Charger un exemple.
  2. Le volet YAML se met à jour instantanément. Choisissez une indentation YAML de 2 ou 4 espaces et, si vous le souhaitez, triez les clés ou mettez toutes les chaînes entre guillemets.
  3. Modifiez directement le YAML si vous le souhaitez : le volet JSON se met aussi à jour.
  4. Cliquez sur Copier ou Télécharger pour enregistrer data.yaml.

À quoi sert un convertisseur JSON vers YAML ?

Il analyse un document JSON et restitue les mêmes données au format YAML. YAML 1.2 étant un sur-ensemble de JSON, chaque valeur JSON a un équivalent exact en YAML : les objets deviennent des mappings, les tableaux des séquences (- élément), et les chaînes, nombres, booléens et null conservent leur type. Le résultat est généralement 20 à 40 % plus court et bien plus facile à lire et à modifier à la main, raison pour laquelle YAML est le standard pour Kubernetes, Docker Compose, GitHub Actions, Ansible et les spécifications OpenAPI.

Exemple

Ce JSON :

{
  "service": "api",
  "replicas": 3,
  "ports": [8080, 9090],
  "env": {"LOG_LEVEL": "info"}
}

devient ce YAML :

service: api
replicas: 3
ports:
  - 8080
  - 9090
env:
  LOG_LEVEL: info

Comment les chaînes sont mises entre guillemets

Le convertisseur (basé sur la bibliothèque très répandue js-yaml) n'ajoute des guillemets que lorsqu'ils sont nécessaires pour que la valeur reste une chaîne. Des valeurs comme "yes", "on", "123", "null" ou "2024-01-01" sont entre guillemets, car un yes sans guillemets serait lu comme un booléen par les analyseurs YAML 1.1 (le célèbre « problème norvégien », où le code pays NO devient false). Les chaînes contenant : , # ou des espaces en début de valeur sont également mises entre guillemets. Les chaînes multilignes sont écrites sous forme de scalaires en bloc littéral (|-) pour que les sauts de ligne restent lisibles. Activez Mettre toutes les chaînes entre guillemets si un outil en aval attend des chaînes systématiquement entre guillemets.

JSON et YAML en un coup d'œil

JSONYAML
CommentairesNon autorisés# commentaire
StructureAccolades et crochetsIndentation
GuillemetsObligatoires pour les clés et les chaînesGénéralement facultatifs
Chaînes multilignesÉchappements \nScalaires en bloc | et >
RéutilisationAucuneAncres & et alias *
Idéal pourAPI, échange de donnéesConfiguration éditée à la main

Conseils pour les fichiers de configuration

En YAML, l'indentation doit utiliser des espaces, jamais des tabulations. Deux espaces est la convention pour Kubernetes et la plupart des systèmes d'intégration continue. Après la conversion, vous pouvez ajouter des commentaires pour expliquer les paramètres, ce que le JSON ne permet pas. Pour faire le chemin inverse, utilisez le convertisseur YAML vers JSON ; pour mettre d'abord le JSON en forme, passez-le dans le formateur JSON.

Aussi recherché comme : convertir json en yaml, convertisseur json yaml, json2yaml, json en yml, générateur yaml kubernetes.

Outils complémentaires : JSON vers YAML

  • JSON vers CSV — Transformez un tableau JSON en CSV prêt à être ouvert dans un tableur.
  • JSON vers TypeScript — Collez un exemple JSON, comme une réponse d’API ou un fichier de configuration, et obtenez des interfaces TypeScript prêtes à l’emploi, avec types imbriqués, propriétés optionnelles et types union.
  • Validateur JSON Schema — Collez un schéma et du JSON pour voir précisément quelles valeurs enfreignent quelle règle, ou générez un schéma de départ à partir de données d'exemple.
  • Testeur JSONPath — Saisissez une requête JSONPath et voyez immédiatement ce qu'elle sélectionne, avec le chemin exact de chaque résultat.

Questions fréquentes

YAML est-il un sur-ensemble de JSON ?
Oui, depuis YAML 1.2 (2009), tout document JSON valide est aussi du YAML valide. La conversion est donc sans perte : les données et les types sont identiques, seule la syntaxe change.
Pourquoi certaines de mes chaînes sont-elles entre guillemets dans le YAML généré ?
Des chaînes comme "yes", "off", "0123" ou "1.0" seraient interprétées comme des booléens ou des nombres si elles n'étaient pas entre guillemets. Elles sont donc mises entre guillemets pour rester des chaînes.
Puis-je convertir du JSON en YAML pour Kubernetes ?
Oui. Collez la sortie JSON de kubectl get … -o json et vous obtenez du YAML que vous pouvez enregistrer comme manifeste. Supprimez les champs générés par le serveur, comme status, uid et resourceVersion, avant de l'appliquer à nouveau.
Mes données sont-elles envoyées quelque part ?
Non. La conversion s'exécute dans votre navigateur grâce à la bibliothèque open source js-yaml ; rien n'est envoyé sur un serveur.
Puis-je installer JSON vers YAML en tant qu’application web et l’utiliser hors ligne ?
Oui. JSON vers YAML est une application web installable (PWA) : elle s’installe depuis votre navigateur, sans passer par une boutique d’applications. Cliquez sur « Installer l’application » en haut de cette page dans Chrome ou Edge (Windows, macOS, Linux, ChromeOS) ; sur Android, utilisez « Partager » → « Ajouter à l’écran d’accueil » sur iPhone et iPad ; ou « Fichier » → « Ajouter au Dock » dans Safari 17+ sur Mac. L’application s’ouvre alors dans sa propre fenêtre avec sa propre icône, et comme elle s’exécute entièrement dans votre navigateur, elle continue de fonctionner hors ligne. Firefox sur ordinateur de bureau ne permet pas d’installer d’applications web. Comment fonctionne l’installation.

Outils similaires