dmosk / envdiff

Comparez .env, JSON, TOML et ini par clés

Choisissez un format, collez ou importez deux configurations et voyez les clés seulement à gauche, seulement à droite ou avec des valeurs différentes. Tout s’exécute dans le navigateur.

Un seul format pour les deux côtés. Le lien Partager place les deux textes dans le fragment # de l’URL — il n’est pas envoyé au serveur, mais ne partagez pas le lien s’il contient de vrais secrets.

Gauche

Droite

Pourquoi utiliser envdiff

  • Comparaison logique. On compare des clés et des valeurs, pas des lignes de texte : ordre, commentaires et lignes vides n’ont pas d’importance.
  • Quatre formats. .env, JSON, TOML et ini ; les clés imbriquées de JSON/TOML deviennent des chemins comme db.host.
  • Masquage des secrets. En option, les valeurs de clés comme password, token, secret ou key s’affichent [REDACTED].
  • Navigateur uniquement. Pas d’API : les fichiers ne quittent pas votre appareil. L’état se partage via le fragment de l’URL.

Comment comparer des configurations

  1. Choisissez le format : il vaut pour les deux côtés.
  2. Collez du texte ou importez un fichier dans chaque panneau ; les deux sont obligatoires.
  3. Cliquez sur Comparer pour voir les clés seulement à gauche, seulement à droite et avec valeurs modifiées.
  4. Activez le masquage si besoin et cliquez sur Partager pour copier un lien avec l’état.

Clés, formats et secrets

envdiff compare des clés, pas des lignes. Les formats ne sont jamais mélangés : JSON et TOML imbriqués sont aplatis en chemins pointés, les sections ini deviennent section.key et .env se lit comme KEY=VALUE.

Conseils :

  • Commentaires, lignes vides et ordre des clés sont ignorés.
  • Les tableaux sont aplatis avec des index, par exemple servers[0].host.
  • Les valeurs sont comparées comme du texte : le nombre 5432 en JSON égale 5432 en .env.
  • Le masquage ne change que l’affichage : des clés comme password, token, secret ou key affichent [REDACTED].
  • Pour YAML, utilisez yamaster ; pour chercher des secrets exposés, secret-scanner.

À quoi ça sert

  • comparer .env entre dev, staging et production ;
  • vérifier une configuration avant et après un déploiement ;
  • trouver les clés absentes d’un environnement ;
  • relire des changements JSON, TOML ou ini sans le bruit d’un diff texte ;
  • partager une comparaison par URL (sans vrais secrets).

Questions fréquentes

Peut-on comparer des formats différents ?

Non. Un seul format est choisi pour les deux côtés ; mélanger les formats n’est pas pris en charge.

Les commentaires et l’ordre comptent-ils ?

Non. Seuls les clés et les valeurs sont comparées.

Mes données sont-elles envoyées ?

Non. L’analyse et la comparaison se font dans le navigateur ; il n’y a pas d’API.

Que fait le masquage ?

Les valeurs de clés comme password, secret, token ou key s’affichent [REDACTED] ; la comparaison utilise les vraies valeurs.

Comment sont affichées les clés imbriquées ?

Avec des points pour les objets et tables et des index pour les tableaux, par exemple db.host ou servers[0].