Convertisseur JSON vers .env
Collez un objet JSON, obtenez un fichier .env instantanément. Générez du dotenv localement — vos clés et secrets ne quittent jamais le navigateur. 100 % privé.
Options · conserver les clés · sans export
Qu'est-ce qu'un fichier .env ?
Un fichier .env (fichier dotenv) est une liste en texte clair de paires KEY=VALUE qui contient la configuration d'environnement et les secrets hors de votre code source. C'est la norme de fait pour Node.js, Vite, Next.js, Python, Ruby et Docker Compose — la bibliothèque dotenv charge le fichier et injecte chaque paire dans l'environnement du processus. Comme il stocke couramment des mots de passe de base de données, des clés API et des jetons d'accès, un fichier .env est traité comme sensible et tenu hors du contrôle de version.
Générer un fichier .env à partir de JSON est l'inverse de la tâche courante d'analyse de config : vous avez déjà une configuration sous forme d'objet JSON — issue d'une réponse d'API, d'un export de config, d'un export de gestionnaire de secrets ou d'un script qui construit des réglages par programme — et vous avez besoin d'un fichier .env à déposer dans un projet ou à remettre à un conteneur. Ce convertisseur parcourt les clés de premier niveau de votre objet JSON et écrit une ligne KEY=VALUE correctement entre guillemets par propriété.
Cet outil repose sur quelques décisions délibérées :
**1. Guillemets sûrs pour l'aller-retour.** Les nombres et booléens sont écrits nus, null devient une valeur vide, et toute chaîne contenant un espace, un saut de ligne, un # ou un guillemet est automatiquement entourée de guillemets doubles et échappée. Le résultat se réanalyse proprement via dotenv et via le Convertisseur .env vers JSON associé, donc une valeur ne change jamais de sens lors de l'aller-retour.
**2. Gestion honnête de l'imbrication.** Un fichier .env est plat par définition. Plutôt que d'abandonner silencieusement les données imbriquées, l'outil sérialise chaque objet ou tableau imbriqué en une chaîne JSON compacte et vous avertit des clés aplaties, pour que vous puissiez décider si le .env est vraiment la bonne cible.
**3. Normalisation optionnelle des clés.** Les clés sont conservées telles quelles par défaut pour éviter de perdre des informations. Activez Normaliser les clés pour convertir le camelCase ou le kebab-case dans la convention UPPER_SNAKE_CASE utilisée par les variables d'environnement, avec un avertissement pour toute clé qui ne peut toujours pas former un nom valide.
**4. Confidentialité 100 % côté navigateur.** Le JSON que vous collez — généralement les identifiants mêmes que vous êtes sur le point d'écrire dans un .env — ne quitte jamais le navigateur. Aucun envoi, aucun aller-retour serveur, aucune journalisation ; vérifiez zéro requête réseau dans l'onglet Réseau des DevTools.
Avant de convertir, vous pouvez valider ou mettre en forme le JSON avec le Formateur JSON, ou déséchapper une chaîne JSON avec Échappement JSON. Si votre configuration s'exprime mieux avec de la structure, JSON vers YAML préserve une imbrication qu'un .env plat ne peut pas.
// Generate .env lines from a JSON object in Node.js
const config = {
DATABASE_URL: 'postgres://user:pass@localhost:5432/mydb',
PORT: 8080,
DEBUG: true,
NOTE: 'value with spaces',
};
const needsQuotes = (s) => /[\s#"'\n]/.test(s);
const env = Object.entries(config)
.map(([key, value]) => {
if (typeof value === 'string') {
return needsQuotes(value)
? `${key}=${JSON.stringify(value)}`
: `${key}=${value}`;
}
return `${key}=${value ?? ''}`; // null -> empty value
})
.join('\n');
console.log(env);
// DATABASE_URL=postgres://user:pass@localhost:5432/mydb
// PORT=8080
// DEBUG=true
// NOTE="value with spaces" Fonctionnalités clés
Guillemets sûrs pour l'aller-retour
Les nombres et booléens sont écrits nus, null devient une valeur vide, et les chaînes avec espaces, sauts de ligne, # ou guillemets sont automatiquement entourées de guillemets doubles et échappées pour se réanalyser proprement via dotenv.
Gestion honnête de l'imbrication
Les objets et tableaux imbriqués ne peuvent pas exister dans un .env plat, donc chacun est sérialisé en une chaîne JSON compacte et un avertissement liste précisément les clés aplaties — jamais un changement silencieux.
Normalisation optionnelle des clés
Conservez les clés telles quelles par défaut — avec un avertissement pour toute clé qui n'est pas un nom env valide — ou activez Normaliser les clés pour convertir le camelCase et le kebab-case dans la convention UPPER_SNAKE_CASE utilisée par les variables d'environnement.
Préfixe export optionnel
Ajoutez export devant chaque ligne pour que le fichier .env généré puisse être sourcé directement dans un shell, suivant le style des scripts CI et de déploiement.
Conversion en direct
La sortie .env se met à jour instantanément à mesure que vous tapez ou collez du JSON. Les entrées volumineuses (plus de 200 Ko) passent en mode manuel avec un bouton Convertir pour garder le navigateur réactif.
Confidentialité 100 % côté navigateur
Toute la conversion s'exécute localement dans votre navigateur. Le JSON que vous collez — clés API, identifiants, jetons — n'est jamais envoyé, jamais journalisé et jamais stocké sur un serveur.
Exemples
Objet de config vers .env
{
"DATABASE_URL": "postgres://user:pass@localhost:5432/mydb",
"PORT": 8080,
"DEBUG": true,
"LOG_LEVEL": "info",
"API_KEY": "sk_live_abc123"
} DATABASE_URL=postgres://user:pass@localhost:5432/mydb PORT=8080 DEBUG=true LOG_LEVEL=info API_KEY=sk_live_abc123
Un objet de config JSON plat devient un fichier .env propre. Les nombres et booléens sont écrits sans guillemets ; les chaînes simples sont écrites telles quelles. Prêt à enregistrer en .env et à charger avec dotenv.
Valeurs nécessitant des guillemets
{
"GREETING": "Hello, World",
"MOTD": "line one\nline two",
"COLOR": "#ff0000",
"NOTE": "value with # hash",
"EMPTY": null
} GREETING="Hello, World" MOTD="line one\nline two" COLOR="#ff0000" NOTE="value with # hash" EMPTY=
Les chaînes contenant des espaces, des sauts de ligne, des # ou des guillemets sont automatiquement entourées de guillemets doubles et échappées pour survivre à un aller-retour via dotenv. Une valeur null devient une affectation vide (KEY=).
Normaliser les clés en UPPER_SNAKE_CASE
{
"databaseUrl": "postgres://localhost/mydb",
"poolSize": 10,
"enable-signup": true
} DATABASE_URL=postgres://localhost/mydb POOL_SIZE=10 ENABLE_SIGNUP=true
Avec l'option Normaliser les clés activée, les clés en camelCase et kebab-case sont converties dans la convention UPPER_SNAKE_CASE utilisée par les variables d'environnement. Avec elle désactivée, les clés d'origine sont conservées telles quelles.
Objet imbriqué aplati en chaîne JSON
{
"APP_NAME": "my-app",
"FEATURES": { "signup": true, "beta": false },
"REGIONS": ["us-east-1", "eu-west-1"]
} APP_NAME=my-app
FEATURES="{\"signup\":true,\"beta\":false}"
REGIONS="[\"us-east-1\",\"eu-west-1\"]" Les fichiers .env sont plats, donc les objets et tableaux imbriqués ne peuvent pas être représentés nativement. L'outil sérialise chaque valeur imbriquée en une chaîne JSON compacte et la met entre guillemets doubles, et affiche un avertissement listant les clés aplaties pour que le comportement ne soit jamais silencieux.
Comment utiliser
- 1
Collez votre objet JSON
Saisissez ou collez un objet JSON plat dans le champ de saisie ci-dessus. Vous pouvez aussi cliquer sur « Charger un exemple » pour essayer un objet de config, des valeurs nécessitant des guillemets ou un objet imbriqué.
- 2
Voir la sortie .env en direct
Le fichier .env apparaît instantanément dans le panneau de sortie. Activez « Normaliser les clés » pour des noms en UPPER_SNAKE_CASE, ou « Ajouter le préfixe export » si le fichier sera sourcé dans un shell.
- 3
Copier ou télécharger
Cliquez sur Copier pour récupérer le .env dans votre presse-papiers, ou Télécharger pour l'enregistrer en fichier .env — prêt à déposer dans votre projet et à charger avec dotenv.
Pièges courants du JSON
Tableau ou scalaire de premier niveau
Un fichier .env est un ensemble plat de variables nommées, donc l'entrée doit être un objet JSON. Un tableau de premier niveau ou une valeur nue comme une chaîne ou un nombre n'a pas de noms de clé à mapper sur des variables, et l'outil signale une erreur. Enveloppez d'abord vos données dans un objet avec des clés descriptives.
["a", "b", "c"]
{"ITEMS": "a,b,c"} Syntaxe JSON invalide
L'entrée doit être du JSON valide. Les virgules finales, les guillemets simples et les clés non entre guillemets sont des erreurs courantes copiées depuis JavaScript et provoquent une erreur d'analyse avec une ligne et une colonne. Utilisez des guillemets doubles pour toutes les clés et valeurs chaîne, et retirez toute virgule finale.
{'PORT': 8080,} {"PORT": 8080} Attendre une structure imbriquée dans le .env
Les objets et tableaux imbriqués ne peuvent pas être représentés nativement dans un fichier .env plat. L'outil les sérialise en chaînes JSON et vous avertit, mais la valeur devient une seule chaîne opaque. Si vous avez besoin de préserver la structure, convertissez en YAML plutôt qu'en .env.
{"DB": {"host": "localhost", "port": 5432}} {"DB_HOST": "localhost", "DB_PORT": 5432} Clés qui ne sont pas des noms de variable valides
La plupart des shells et chargeurs n'acceptent que les noms de variable correspondant à [A-Za-z_][A-Za-z0-9_]* — une clé qui commence par un chiffre ou contient des espaces ou des tirets est invalide. Avec les clés conservées telles quelles, l'outil vous avertit de telles clés ; Normaliser les clés corrige la casse et les tirets mais ne peut pas sauver un nom qui commence par un chiffre, donc renommez ces clés dans votre JSON.
{"2fa-enabled": true} {"TWO_FA_ENABLED": true} Chaînes non entre guillemets qui en ont besoin
Si vous écrivez le JSON à la main, rappelez-vous qu'une valeur avec des espaces ou un # doit quand même être une chaîne JSON valide (entre guillemets doubles). L'outil la remet ensuite entre guillemets pour le .env automatiquement. L'erreur est d'oublier les guillemets JSON côté entrée, ce qui produit du JSON invalide.
{"MSG": Hello World} {"MSG": "Hello World"} Cas d'usage courants
- Générer un .env à partir d'un export de config
- Prenez un export de configuration JSON depuis une API, un tableau de bord de réglages ou un gestionnaire de secrets et transformez-le en fichier .env prêt à l'emploi pour le développement local ou un conteneur.
- Échafauder des modèles .env
- Construisez un objet JSON décrivant les variables dont un nouveau service a besoin, convertissez-le en .env, et validez un .env.example pour que vos coéquipiers sachent exactement quelles clés renseigner.
- Relier les outils configurés en JSON à dotenv
- Certains outils émettent leur configuration en JSON alors que votre runtime attend un .env. Convertissez la sortie JSON au format dotenv pour que les deux moitiés du pipeline s'accordent sur les mêmes variables.
- Produire des fichiers env shell sourçables
- Activez le préfixe export pour générer un fichier que vous pouvez sourcer directement dans un shell ou une étape CI, transformant un blob de config JSON en variables d'environnement exportées en un seul collage.
- Aller-retour de configuration
- Associez ceci au Convertisseur .env vers JSON pour éditer la configuration en JSON structuré et la réécrire en .env — les guillemets sûrs pour l'aller-retour garantissent que les valeurs survivent dans les deux sens.
- Normaliser des clés à casse mixte
- Convertissez un objet JSON avec des clés en camelCase ou kebab-case en un .env avec des noms de variable cohérents en UPPER_SNAKE_CASE grâce à l'option Normaliser les clés, suivant les conventions des variables d'environnement.
Détails techniques
- Entrée objet uniquement avec sérialisation typée
- L'entrée est analysée avec le JSON.parse() natif du navigateur et doit être un objet de premier niveau ; les tableaux et scalaires sont rejetés avec une erreur claire. Chaque propriété de premier niveau est sérialisée par type : les nombres et booléens sont écrits nus, null devient une valeur vide (KEY=), et les chaînes sont écrites directement sauf si elles contiennent un espace, un saut de ligne, un # ou un guillemet, auquel cas elles sont entourées de guillemets doubles et échappées pour la sécurité de l'aller-retour.
- Valeurs imbriquées et normalisation des clés
- Les objets et tableaux imbriqués sont sérialisés avec un JSON.stringify compact, mis entre guillemets doubles et échappés, avec un avertissement nommant les clés aplaties. L'étape optionnelle Normaliser les clés convertit les clés en UPPER_SNAKE_CASE, résolvant la plupart des noms invalides ; quand les clés sont conservées telles quelles, toute clé qui ne correspond pas à [A-Za-z_][A-Za-z0-9_]* déclenche un avertissement de nom invalide. Un préfixe export optionnel peut être ajouté à chaque ligne.
- 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 JSON n'est transmise sur le réseau à aucun moment. Le sérialiseur est écrit en interne sans dépendance externe, car la bibliothèque Node dotenv 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
- Conserver les clés telles quelles sauf besoin des conventions env
- Laissez Normaliser les clés désactivé quand l'application consommatrice attend déjà les noms de clé exacts de votre JSON, pour que rien ne soit renommé de façon inattendue. Activez-le uniquement quand vous voulez spécifiquement la convention UPPER_SNAKE_CASE qu'utilisent conventionnellement les variables d'environnement.
- Aplatir l'imbrication intentionnellement, pas accidentellement
- Une valeur imbriquée devient une chaîne JSON opaque dans le .env, que la plupart des applications ne peuvent pas réanalyser automatiquement. Quand vous voyez l'avertissement d'aplatissement, préférez remodeler le JSON en clés plates et préfixées (DB_HOST, DB_PORT) avant de convertir, ou choisissez un format structuré comme YAML.
- Faire confiance à la mise entre guillemets automatique pour les aller-retours
- Laissez l'outil décider quand mettre entre guillemets — il n'entoure de guillemets doubles et n'échappe que les valeurs qui en ont besoin. Cela garde le .env lisible tout en garantissant que les valeurs avec espaces, sauts de ligne ou # survivent inchangées à un aller-retour via le Convertisseur .env vers JSON.
- Générer des secrets uniquement dans un outil côté navigateur
- Le JSON que vous convertissez ici est de fait un ensemble d'identifiants. Ne générez un .env que dans un outil qui s'exécute entièrement dans le navigateur ; vérifiez zéro requête réseau dans les DevTools. Ce convertisseur remplit cette condition, contrairement aux générateurs côté serveur ou adossés à une API.
- Valider d'abord l'entrée JSON
- Si le JSON est écrit à la main ou assemblé par un script, validez-le d'abord avec le Formateur JSON pour détecter les virgules finales ou les clés non entre guillemets, afin d'obtenir un .env propre plutôt qu'une erreur d'analyse déroutante.
Questions fréquentes
Comment convertir du JSON en fichier .env en ligne ?
Quel type de JSON est accepté ?
Comment les chaînes, nombres, booléens et null sont-ils écrits ?
Qu'arrive-t-il aux objets et tableaux imbriqués ?
Que fait l'option Normaliser les clés ?
Mes données JSON 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 .env vers JSON
Encodage et formatage
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.
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é.