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.
Options · 2 espaces · chaînes
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
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
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
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).
DATABASE_URL DEBUG true
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.
API_KEY = abc123
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é.
COLOR=#ff0000
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.
GREETING='Hello\nWorld'
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.
KEY="-----BEGIN----- line two
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é.
PORT=3000 PORT=8080
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 ?
Les valeurs sont-elles converties en nombres et booléens, ou conservées comme chaînes ?
Que se passe-t-il si la même clé apparaît deux fois dans mon fichier .env ?
Comment les guillemets, échappements et valeurs multilignes sont-ils gérés ?
Cet analyseur est-il cohérent avec la bibliothèque dotenv ?
Peut-il gérer une configuration imbriquée ou groupée ?
Mes données .env sont-elles envoyées à un serveur ?
Outils connexes
Voir tous les outils →Décodeur et Encodeur Base64
Encodage et formatage
Décodez et encodez en Base64 en ligne gratuitement. Conversion en temps réel, support UTF-8 et émojis. 100 % privé, dans votre navigateur.
Convertisseur Base64 en Image
Encodage et formatage
Décodez une chaîne Base64 ou un URI de données en image dans votre navigateur. Aperçu, dimensions et MIME, puis téléchargement en PNG, JPG, GIF, SVG. Sans envoi.
Convertisseur CSV vers JSON
Encodage et formatage
Convertissez du CSV en JSON dans le navigateur. RFC 4180, inférence de types, ligne d'en-tête, sûr pour grands entiers. 100 % privé, sans envoi.
Convertisseur HTML vers Markdown
Encodage et formatage
Convertissez du HTML en Markdown propre dans le navigateur — tables GFM, listes de tâches, liens. Titres ATX/Setext et liens inline ou par référence. Idéal pour migrer du contenu web ou alimenter des LLM. 100 % privé.
Convertisseur d'Image en Base64
Encodage et formatage
Convertissez des images en URI de données Base64 dans votre navigateur — PNG, JPG, GIF, WebP, SVG, ICO. Copiez la sortie HTML, CSS, Markdown et JSON. 100 % privé.
JSON Diff (Comparateur)
Encodage et formatage
Comparez deux fichiers JSON instantanément dans votre navigateur. Vue côte à côte, sortie JSON Patch RFC 6902, ignorer les champs bruyants comme les horodatages et les ID. 100% privé, aucun envoi.