Skip to content

Convertisseur .env vers JSON

Collez un fichier .env, obtenez du JSON instantanément. Vos mots de passe et clés API ne quittent jamais le navigateur — 100 % privé, sans envoi.

Sans pistage Fonctionne dans le navigateur Gratuit
Options · 2 espaces · chaînes
Indentation
0 caractères
JSON Sortie
0 lignes
Vérifié pour la compatibilité d'analyse dotenv, la gestion des guillemets et échappements, et le comportement des clés en double — Go Tools Engineering Team · 12 juin 2026

Qu'est-ce qu'un fichier .env ?

Un fichier .env (fichier dotenv) est une liste en texte clair de paires KEY=VALUE servant à garder la configuration et les secrets hors du code source. C'est la norme de fait pour les variables d'environnement dans Node.js, Vite, Next.js, Python, Ruby, Docker Compose et presque tous les frameworks modernes — la bibliothèque dotenv et ses portages chargent le fichier et injectent chaque paire dans l'environnement du processus. Comme le fichier contient couramment des mots de passe de base de données, des clés API, des secrets clients OAuth et des jetons d'accès, il est presque toujours exclu de git et traité comme sensible.

Convertir un fichier .env en JSON est une tâche fréquente : vous devez alimenter une configuration dans un outil qui lit du JSON, la valider face à un JSON Schema, l'importer dans un gestionnaire de secrets, générer des objets de config typés, ou simplement inspecter d'un coup d'œil un long .env sous forme de données structurées. Ce convertisseur transforme la liste plate de paires en un seul objet JSON, une propriété par clé.

Cet outil repose sur quelques décisions délibérées :

**1. Chaînes par défaut, types à la demande.** dotenv ne convertit jamais les types — à l'exécution, chaque valeur de process.env est une chaîne. La sortie par défaut respecte cela exactement, donc le JSON correspond à ce que votre application voit vraiment. Quand vous voulez un JSON typé, l'option Inférer les types promeut les nombres, booléens et valeurs null non entre guillemets, tandis que les valeurs entre guillemets restent des chaînes car les guillemets sont un signal explicite.

**2. Analyse dotenv fidèle.** Les commentaires, lignes vides, le préfixe export, les guillemets simples vs doubles, les séquences d'échappement, les valeurs multilignes entre guillemets doubles et les commentaires en ligne sur les valeurs non entre guillemets sont tous gérés comme la bibliothèque dotenv les gère — aucune surprise quand vous comparez le JSON à ce que votre application charge.

**3. Sécurité des clés en double.** Quand une clé est définie deux fois, la valeur ultérieure l'emporte, et un avertissement vous indique quelles clés étaient en double pour qu'un secret accidentellement masqué ne passe jamais inaperçu.

**4. Confidentialité 100 % côté navigateur.** Vos données .env ne quittent jamais le navigateur. Aucun envoi, aucun aller-retour serveur et aucune journalisation — vous pouvez vérifier zéro requête réseau dans l'onglet Réseau des DevTools. C'est la seule façon responsable de convertir un vrai .env en ligne, puisque le fichier est essentiellement une liste d'identifiants.

Après conversion, vous pouvez mettre en forme ou valider le résultat avec le Formateur JSON, l'échapper pour l'intégrer dans une autre chaîne avec Échappement JSON, ou faire le sens inverse avec le Convertisseur JSON vers .env associé. Si votre configuration est en YAML, essayez YAML vers JSON.

// Parse a .env file to a JSON object in Node.js using dotenv
import { parse } from 'dotenv';

const envText = `# Database
DATABASE_URL=postgres://user:pass@localhost:5432/mydb
DEBUG=true`;

// dotenv.parse returns a plain object of string values
const parsed = parse(envText);

// Every value is a string, just like process.env
const json = JSON.stringify(parsed, null, 2);

console.log(json);
// {
//   "DATABASE_URL": "postgres://user:pass@localhost:5432/mydb",
//   "DEBUG": "true"
// }

Fonctionnalités clés

Analyse dotenv fidèle

Gère les commentaires, le préfixe export, les guillemets simples et doubles, les séquences d'échappement (\n \t \r \\ \"), les valeurs multilignes entre guillemets doubles et les commentaires en ligne — exactement comme le fait la bibliothèque dotenv.

Chaînes par défaut, types à la demande

Les valeurs sont des chaînes JSON par défaut pour correspondre au comportement d'exécution de dotenv. Activez Inférer les types pour promouvoir les nombres, booléens et valeurs null non entre guillemets ; les valeurs entre guillemets restent toujours des chaînes.

Avertissements de clés en double

Si une clé est définie deux fois, la dernière valeur l'emporte (comportement dotenv) et un avertissement liste chaque clé en double, pour qu'un secret silencieusement écrasé ne passe pas inaperçu.

Conversion en direct

La sortie JSON se met à jour instantanément à mesure que vous tapez ou collez. Les entrées volumineuses (plus de 200 Ko) passent automatiquement en mode manuel avec un bouton Convertir pour garder le navigateur réactif.

Indentation 2 ou 4 espaces

Basculez entre une indentation de 2 et 4 espaces pour la sortie JSON afin de correspondre au style de votre base de code ou à votre outillage en aval.

Confidentialité 100 % côté navigateur

Toute l'analyse s'exécute localement dans votre navigateur. Vos données .env — mots de passe de base de données, clés API, jetons — ne sont jamais envoyées, jamais journalisées et jamais stockées sur un serveur.

Exemples

Fichier .env Node / Vite

# Database
DATABASE_URL=postgres://user:pass@localhost:5432/mydb
DATABASE_POOL_SIZE=10

# Auth
JWT_SECRET="super secret value"
SESSION_TIMEOUT=3600

# Feature flags
ENABLE_SIGNUP=true
VITE_API_BASE=https://api.example.com
{
  "DATABASE_URL": "postgres://user:pass@localhost:5432/mydb",
  "DATABASE_POOL_SIZE": "10",
  "JWT_SECRET": "super secret value",
  "SESSION_TIMEOUT": "3600",
  "ENABLE_SIGNUP": "true",
  "VITE_API_BASE": "https://api.example.com"
}

Un fichier .env Node.js / Vite typique. Par défaut, chaque valeur devient une chaîne JSON (la norme dotenv). Les lignes de commentaire et les lignes vides sont ignorées. Activez Inférer les types si vous voulez que 10 devienne un nombre et true un booléen.

Environnement Docker Compose

POSTGRES_DB=mydb
POSTGRES_USER=admin
POSTGRES_PASSWORD=s3cr3t!
PGDATA=/var/lib/postgresql/data
TZ=UTC
NGINX_HOST=example.com
NGINX_PORT=80
{
  "POSTGRES_DB": "mydb",
  "POSTGRES_USER": "admin",
  "POSTGRES_PASSWORD": "s3cr3t!",
  "PGDATA": "/var/lib/postgresql/data",
  "TZ": "UTC",
  "NGINX_HOST": "example.com",
  "NGINX_PORT": "80"
}

Transformez l'env_file lu par votre pile Docker Compose en JSON pour le charger dans un script, un validateur de configuration ou un gestionnaire de secrets. Rien n'est envoyé — sûr pour de vrais identifiants.

Modèle de secrets CI avec préfixe export

export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
export AWS_REGION=us-east-1
export DEPLOY_ENV=production
{
  "AWS_ACCESS_KEY_ID": "AKIAIOSFODNN7EXAMPLE",
  "AWS_SECRET_ACCESS_KEY": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
  "AWS_REGION": "us-east-1",
  "DEPLOY_ENV": "production"
}

Les fichiers .env de type shell préfixent souvent chaque ligne par export pour pouvoir être sourcés. L'analyseur retire automatiquement le préfixe export et vous donne des clés JSON propres.

.env complexe : guillemets, échappements, multilignes et commentaires en ligne

APP_NAME=My App                 # unquoted value, inline comment stripped
GREETING="Hello,\nWorld"        # double quotes: \n becomes a real newline
LITERAL='no \n escapes here'    # single quotes: kept literally
PRIVATE_KEY="-----BEGIN KEY-----
line two
line three
-----END KEY-----"
EMPTY=
{
  "APP_NAME": "My App",
  "GREETING": "Hello,\nWorld",
  "LITERAL": "no \\n escapes here",
  "PRIVATE_KEY": "-----BEGIN KEY-----\nline two\nline three\n-----END KEY-----",
  "EMPTY": ""
}

Montre tous les cas limites de dotenv à la fois : les commentaires en ligne sur les valeurs non entre guillemets sont retirés, les valeurs entre guillemets doubles traitent les échappements \n \t \r \\ \", les valeurs entre guillemets simples sont conservées littéralement, et une valeur entre guillemets doubles peut s'étendre sur plusieurs lignes jusqu'au guillemet de fermeture (pratique pour les clés PEM).

Comment utiliser

  1. 1

    Collez votre fichier .env

    Saisissez ou collez le contenu de votre .env dans le champ de saisie ci-dessus. Vous pouvez aussi cliquer sur « Charger un exemple » pour essayer un .env Node/Vite, un fichier env Docker Compose ou un modèle de secrets CI.

  2. 2

    Voir la sortie JSON en direct

    Le JSON apparaît instantanément dans le panneau de sortie. Activez « Inférer les types » si vous voulez des nombres et des booléens plutôt que des chaînes, et choisissez une indentation de 2 ou 4 espaces.

  3. 3

    Copier ou télécharger

    Cliquez sur Copier pour récupérer le JSON dans votre presse-papiers, ou Télécharger pour l'enregistrer en fichier .json — prêt pour un chargeur de configuration, un gestionnaire de secrets ou tout outil qui lit du JSON.

Pièges courants du .env

Signe = manquant sur une ligne

Chaque ligne non commentaire et non vide doit être une paire KEY=VALUE. Une ligne sans signe = ne peut pas être analysée et l'outil signale une erreur avec le numéro de ligne. Une clé seule sans valeur doit s'écrire KEY= (valeur vide).

✗ Incorrect
DATABASE_URL
DEBUG true
✓ Correct
DATABASE_URL=
DEBUG=true

Espaces autour du signe =

dotenv sépare au premier = sans espaces autour. Écrire KEY = value fait de la clé « KEY » (avec un espace de fin) et de la valeur « value » (avec un espace de début). Retirez les espaces, ou mettez la valeur entre guillemets si elle doit contenir un espace de début.

✗ Incorrect
API_KEY = abc123
✓ Correct
API_KEY=abc123

Valeur non entre guillemets dévorée par un commentaire en ligne

Sur une valeur non entre guillemets, un espace suivi de # commence un commentaire en ligne et tout ce qui suit est supprimé. Si votre valeur contient légitimement un #, mettez-la entre guillemets pour que le # soit préservé.

✗ Incorrect
COLOR=#ff0000
✓ Correct
COLOR="#ff0000"

Attendre des échappements dans les guillemets simples

Les valeurs entre guillemets simples sont littérales — \n reste une barre oblique inverse et un n, ce ne devient pas un saut de ligne. Utilisez les guillemets doubles quand vous voulez que des séquences d'échappement comme \n, \t ou \" soient traitées.

✗ Incorrect
GREETING='Hello\nWorld'
✓ Correct
GREETING="Hello\nWorld"

Guillemet double non fermé dans une valeur multiligne

Une valeur entre guillemets doubles peut s'étendre sur plusieurs lignes, mais elle doit être fermée par un guillemet double correspondant. S'il manque le guillemet de fermeture, l'analyseur continue de consommer les lignes jusqu'à la fin du fichier. Assurez-vous que les secrets multilignes comme les clés PEM se terminent par un guillemet de fermeture.

✗ Incorrect
KEY="-----BEGIN-----
line two
✓ Correct
KEY="-----BEGIN-----
line two
-----END-----"

Clés en double silencieusement écrasées

Si la même clé apparaît deux fois, la dernière valeur l'emporte et la précédente est perdue. L'outil vous avertit, mais la correction la plus propre est de retirer le doublon pour que la valeur voulue soit sans ambiguïté.

✗ Incorrect
PORT=3000
PORT=8080
✓ Correct
PORT=8080

Cas d'usage courants

Alimenter une configuration dans un outillage basé sur JSON
Convertissez un fichier .env en JSON pour charger la configuration d'environnement dans des outils, scripts et SDK qui lisent du JSON plutôt que des variables d'environnement — validateurs de config, vérificateurs de schéma et générateurs de code.
Importer des secrets dans un gestionnaire
De nombreux gestionnaires de secrets (AWS Secrets Manager, Vault, Doppler) acceptent du JSON pour un import en masse. Convertissez d'abord un fichier .env en objet JSON, puis poussez l'ensemble en une seule opération plutôt qu'une variable à la fois.
Inspecter un long .env d'un coup d'œil
Transformez un fichier .env tentaculaire en JSON structuré et indenté pour parcourir les clés, repérer les doublons via l'avertissement et examiner la configuration dans un format lisible avant de valider des changements.
Générer des objets de config typés
Activez Inférer les types pour obtenir des nombres, booléens et null dans le JSON, puis alimentez-le dans une couche de config typée ou une étape JSON vers TypeScript pour dériver une interface de vos variables d'environnement.
Valider face à un JSON Schema
Convertissez le .env en JSON et passez-le dans un validateur JSON Schema pour imposer les clés requises, les formats de valeur et les énumérations autorisées en CI — détectant les environnements mal configurés avant le déploiement.
Migrer la configuration env_file de Docker Compose
Transformez l'env_file lu par votre pile Compose en JSON pour l'utiliser dans un autre outil d'orchestration, un serveur de config ou de la documentation — sans exposer de vrais identifiants à un service externe.

Détails techniques

Analyse ligne par ligne compatible dotenv
L'entrée est analysée ligne par ligne. Les lignes vides et les lignes de commentaire (premier caractère non blanc #) sont ignorées, un préfixe export optionnel est retiré, et chaque ligne restante est séparée au premier = en clé et valeur. Les clés sont nettoyées des espaces environnants. Les valeurs suivent les règles dotenv : les guillemets doubles traitent les échappements \n \t \r \\ \" et autorisent les valeurs multilignes, les guillemets simples sont littéraux, et les valeurs non entre guillemets retirent les espaces de fin et les commentaires en ligne.
Inférence de type optionnelle
Par défaut, toutes les valeurs sont émises comme chaînes JSON, ce qui correspond au comportement d'exécution de dotenv où les valeurs de process.env sont toujours des chaînes. Avec Inférer les types activé, les valeurs non entre guillemets sont promues : les chaînes numériques deviennent des nombres JSON, true/false deviennent des booléens, et les valeurs vides ou null deviennent null en JSON. Les valeurs entre guillemets ne sont jamais inférées — les guillemets les marquent comme chaînes explicites. Les clés en double se résolvent en dernier-gagne avec un avertissement.
Côté navigateur — aucun envoi, aucun serveur
Tout le traitement se déroule entièrement dans le moteur JavaScript de votre navigateur ; aucune donnée .env n'est transmise sur le réseau à aucun moment. Il n'y a aucune dépendance externe car l'analyseur est écrit en interne — la bibliothèque Node dotenv repose sur le système de fichiers et n'est pas sûre côté navigateur. Les entrées de plus de 200 Ko passent du mode direct au mode manuel (un clic explicite sur Convertir) pour garder le navigateur réactif.

Bonnes pratiques

Garder la sortie chaîne par défaut pour correspondre à dotenv
dotenv charge chaque valeur comme une chaîne, donc la sortie chaîne par défaut reflète exactement ce que votre application voit à l'exécution. N'activez Inférer les types que lorsque le consommateur en aval attend vraiment un JSON typé — sinon vous risquez un décalage où '0' ou 'false' se comporte différemment en JSON et dans votre application en cours d'exécution.
Mettre entre guillemets les valeurs contenant # ou des espaces
Sur les valeurs non entre guillemets, un espace suivi de # commence un commentaire en ligne, et les espaces de fin sont retirés. Si une valeur contient légitimement un # (couleurs hexadécimales, URL avec fragment) ou des espaces significatifs, mettez-la entre guillemets doubles pour qu'elle soit préservée telle quelle dans le JSON.
Résoudre les clés en double à la source
L'outil conserve la dernière valeur et vous avertit quand une clé est en double, mais un doublon dans un fichier .env est presque toujours une erreur. Retirez la ligne redondante pour qu'il n'y ait aucune ambiguïté sur le secret actif.
Ne jamais coller de secrets de production dans des convertisseurs côté serveur
Comme un fichier .env est de fait une liste d'identifiants, ne le convertissez que dans un outil qui s'exécute entièrement dans le navigateur. Ce convertisseur le fait — vérifiez zéro requête réseau dans les DevTools — donc il est sûr pour de vrais secrets, contrairement aux convertisseurs côté serveur ou adossés à une API.
Valider le JSON avant de l'utiliser en aval
Après conversion, passez le JSON dans le Formateur JSON pour confirmer la structure avant de l'alimenter dans un validateur de schéma, un import de gestionnaire de secrets ou un chargeur de config, afin qu'une surprise structurelle apparaisse tôt.

Questions fréquentes

Comment convertir un fichier .env en JSON en ligne ?
Collez le contenu de votre fichier .env dans le champ de saisie ci-dessus. L'outil l'analyse en JSON instantanément dans votre navigateur — aucun clic nécessaire. Chaque ligne KEY=VALUE devient une propriété JSON. Vous pouvez choisir une indentation de 2 ou 4 espaces dans le panneau Options, puis cliquer sur Copier pour récupérer le JSON ou Télécharger pour l'enregistrer en fichier .json. Tout s'exécute localement, vos secrets ne quittent donc jamais votre appareil.
Les valeurs sont-elles converties en nombres et booléens, ou conservées comme chaînes ?
Par défaut, chaque valeur est conservée comme chaîne, ce qui correspond exactement à la norme dotenv. dotenv lui-même ne convertit jamais les types — les valeurs de process.env sont toujours des chaînes — donc ce comportement par défaut garde le JSON fidèle à ce que votre application voit réellement à l'exécution. Si vous préférez un JSON typé, activez l'option Inférer les types. Une fois activée, les valeurs non entre guillemets qui ressemblent à des nombres deviennent des nombres JSON, true et false deviennent des booléens, et une valeur vide ou null devient null en JSON. Les valeurs entre guillemets restent toujours des chaînes même avec Inférer les types activé, car les guillemets signalent une chaîne explicite.
Que se passe-t-il si la même clé apparaît deux fois dans mon fichier .env ?
Conformément au comportement de dotenv, la dernière occurrence l'emporte — la valeur ultérieure écrase la précédente. Comme une valeur ignorée silencieusement est une source fréquente de mauvaise configuration, l'outil affiche aussi un avertissement non bloquant indiquant précisément quelles clés étaient en double, pour que vous puissiez confirmer quelle valeur s'est retrouvée dans le JSON. La sortie reste un objet JSON valide avec une entrée par clé.
Comment les guillemets, échappements et valeurs multilignes sont-ils gérés ?
Les valeurs entre guillemets doubles traitent les séquences d'échappement : \n devient un saut de ligne, \t une tabulation, \r un retour chariot, \\ une barre oblique inverse et \" un guillemet double littéral. Une valeur entre guillemets doubles peut aussi s'étendre sur plusieurs lignes jusqu'au guillemet de fermeture — pratique pour les clés privées PEM et les certificats. Les valeurs entre guillemets simples sont traitées littéralement, sans traitement d'échappement, comme dans le shell. Les valeurs non entre guillemets vont jusqu'à la fin de la ligne, les espaces de fin sont retirés et les commentaires en ligne supprimés (un espace suivi de # commence un commentaire). Cela correspond à la façon dont la bibliothèque dotenv analyse les fichiers.
Cet analyseur est-il cohérent avec la bibliothèque dotenv ?
Oui. Les règles d'analyse suivent les conventions dotenv largement répandues : les lignes de commentaire # et les lignes vides sont ignorées, le préfixe export optionnel est retiré, les clés sont séparées au premier signe =, les guillemets simples sont littéraux, les guillemets doubles traitent les échappements et autorisent les valeurs multilignes, les valeurs non entre guillemets retirent les espaces environnants et de fin, et toutes les valeurs sont des chaînes par défaut. L'option Inférer les types est un supplément pratique ajouté par-dessus — elle est désactivée par défaut précisément pour que la sortie corresponde à ce que dotenv chargerait.
Peut-il gérer une configuration imbriquée ou groupée ?
Les fichiers .env sont intentionnellement plats — une liste de paires clé/valeur sans imbrication. Ce convertisseur produit un seul objet JSON plat qui reflète cette structure une à une. Si votre application lit une configuration groupée (par exemple DB_HOST et DB_PORT), les clés restent plates dans le JSON ; vous pouvez les remodeler ensuite dans le code. Si vous avez besoin de vraies structures imbriquées, un format comme YAML vers JSON convient mieux, et vous pouvez mettre en forme le résultat avec le Formateur JSON.
Mes données .env sont-elles envoyées à un serveur ?
Non. Toute l'analyse se déroule entièrement dans votre navigateur en JavaScript. Le contenu de votre .env — qui contient généralement des mots de passe de base de données, des clés API, des secrets OAuth et des jetons d'accès — n'est jamais transmis, jamais stocké sur un serveur et jamais journalisé. Vous pouvez le vérifier en ouvrant l'onglet Réseau de votre navigateur et en constatant que coller le fichier ne déclenche aucune requête. C'est ce qui rend sûr de convertir un vrai .env de production, pas seulement un échantillon nettoyé.