Skip to content

JSON zu .env Konverter

Ein JSON-Objekt einfügen, sofort eine .env-Datei erhalten. dotenv lokal erzeugen — deine Keys und Secrets verlassen nie den Browser. 100% privat, kein Upload.

Kein Tracking Läuft im Browser Kostenlos
Optionen · Schlüssel behalten · kein export
0 Zeichen
.env Ausgabe
0 Zeilen
Geprüft auf nur-Objekt-Eingabe-Behandlung, roundtrip-sicheres Zitieren, Abflachung verschachtelter Werte und Schlüsselnormalisierung — Go Tools Engineering Team · Jun 12, 2026

Was ist eine .env-Datei?

Eine .env-Datei (dotenv-Datei) ist eine Klartextliste von KEY=VALUE-Paaren, die Umgebungskonfiguration und Geheimnisse außerhalb deines Quellcodes hält. Sie ist der De-facto-Standard für Node.js, Vite, Next.js, Python, Ruby und Docker Compose — die dotenv-Bibliothek lädt die Datei und injiziert jedes Paar in die Prozessumgebung. Da sie häufig Datenbankpasswörter, API-Keys und Zugangstokens speichert, wird eine .env-Datei als sensibel behandelt und aus der Versionskontrolle herausgehalten.

Das Erzeugen einer .env-Datei aus JSON ist die Umkehrung der häufigen Aufgabe des Konfigurations-Parsings: Du hast Konfiguration bereits als JSON-Objekt — aus einer API-Antwort, einem Konfigurationsexport, einem Secrets-Manager-Dump oder einem Skript, das Einstellungen programmatisch aufbaut — und brauchst eine .env-Datei, die du in ein Projekt einfügst oder einem Container übergibst. Dieser Konverter durchläuft die Schlüssel der obersten Ebene deines JSON-Objekts und schreibt pro Eigenschaft eine korrekt zitierte Zeile KEY=VALUE.

Dieses Tool basiert auf einigen bewussten Entscheidungen:

**1. Roundtrip-sicheres Zitieren.** Zahlen und Booleans werden nackt geschrieben, null wird zu einem leeren Wert, und jeder String, der ein Leerzeichen, einen Zeilenumbruch, # oder ein Anführungszeichen enthält, wird automatisch in doppelte Anführungszeichen gesetzt und maskiert. Das Ergebnis parst sauber zurück durch dotenv und durch den begleitenden .env zu JSON Konverter, sodass ein Wert auf dem Roundtrip nie seine Bedeutung ändert.

**2. Ehrlicher Umgang mit Verschachtelung.** Eine .env-Datei ist per Definition flach. Statt verschachtelte Daten stillschweigend zu verwerfen, serialisiert das Tool jedes verschachtelte Objekt oder Array zu einem kompakten JSON-String und warnt dich, welche Schlüssel abgeflacht wurden, sodass du entscheiden kannst, ob .env wirklich das richtige Ziel ist.

**3. Optionale Schlüsselnormalisierung.** Schlüssel werden standardmäßig wörtlich beibehalten, um keine Informationen zu verlieren. Aktiviere Schlüssel normalisieren, um camelCase oder kebab-case in die UPPER_SNAKE_CASE-Konvention umzuwandeln, die Umgebungsvariablen verwenden, mit einer Warnung für jeden Schlüssel, der dennoch keinen gültigen Namen bilden kann.

**4. 100% browserbasierte Privatsphäre.** Das JSON, das du einfügst — meist genau die Zugangsdaten, die du gleich in eine .env schreiben willst — verlässt nie den Browser. Kein Upload, kein Server-Roundtrip, keine Protokollierung; überprüfe null Netzwerkanfragen im Netzwerk-Tab der DevTools.

Vor dem Konvertieren kannst du das JSON mit dem JSON-Formatierer validieren oder hübsch formatieren oder einen JSON-String mit JSON maskieren entmaskieren. Wenn deine Konfiguration besser mit Struktur ausgedrückt wird, bewahrt JSON zu YAML die Verschachtelung, die eine flache .env nicht kann.

// 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"

Hauptfunktionen

Roundtrip-sicheres Zitieren

Zahlen und Booleans werden nackt geschrieben, null wird zu einem leeren Wert, und Strings mit Leerzeichen, Zeilenumbrüchen, # oder Anführungszeichen werden automatisch in doppelte Anführungszeichen gesetzt und maskiert, damit sie sauber durch dotenv zurückgeparst werden.

Ehrlicher Umgang mit Verschachtelung

Verschachtelte Objekte und Arrays können in einer flachen .env nicht existieren, daher wird jedes zu einem kompakten JSON-String serialisiert und eine Warnung listet genau auf, welche Schlüssel abgeflacht wurden — nie eine stillschweigende Änderung.

Optionale Schlüsselnormalisierung

Behalte Schlüssel standardmäßig wörtlich — mit einer Warnung für jeden Schlüssel, der kein gültiger env-Name ist — oder aktiviere Schlüssel normalisieren, um camelCase und kebab-case in die UPPER_SNAKE_CASE-Konvention umzuwandeln, die Umgebungsvariablen verwenden.

Optionales export-Präfix

Stelle jeder Zeile ein export voran, damit die erzeugte .env-Datei direkt in einer Shell per source eingelesen werden kann, passend zum Stil von CI- und Deploy-Skripten.

Live-Konvertierung

Die .env-Ausgabe aktualisiert sich sofort, während du JSON tippst oder einfügst. Große Eingaben (über 200KB) wechseln in den manuellen Modus mit einer Konvertieren-Schaltfläche, damit der Browser reaktionsfähig bleibt.

100% browserbasierte Privatsphäre

Die gesamte Konvertierung läuft lokal in deinem Browser. Das JSON, das du einfügst — API-Keys, Zugangsdaten, Tokens — wird nie hochgeladen, nie protokolliert und nie auf einem Server gespeichert.

Beispiele

Konfigurationsobjekt zu .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

Ein flaches JSON-Konfigurationsobjekt wird zu einer sauberen .env-Datei. Zahlen und Booleans werden ohne Anführungszeichen geschrieben; einfache Strings werden unverändert geschrieben. Bereit, als .env gespeichert und mit dotenv geladen zu werden.

Werte, die Anführungszeichen benötigen

{
  "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=

Strings, die Leerzeichen, Zeilenumbrüche, # oder Anführungszeichen enthalten, werden automatisch in doppelte Anführungszeichen gesetzt und maskiert, damit sie einen Roundtrip durch dotenv überstehen. Ein null-Wert wird zu einer leeren Zuweisung (KEY=).

Schlüssel zu UPPER_SNAKE_CASE normalisieren

{
  "databaseUrl": "postgres://localhost/mydb",
  "poolSize": 10,
  "enable-signup": true
}
DATABASE_URL=postgres://localhost/mydb
POOL_SIZE=10
ENABLE_SIGNUP=true

Mit aktivierter Option Schlüssel normalisieren werden camelCase- und kebab-case-Schlüssel in die UPPER_SNAKE_CASE-Konvention umgewandelt, die Umgebungsvariablen verwenden. Ist sie deaktiviert, werden die ursprünglichen Schlüssel wörtlich beibehalten.

Verschachteltes Objekt zu einem JSON-String abgeflacht

{
  "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\"]"

.env-Dateien sind flach, sodass verschachtelte Objekte und Arrays nicht nativ dargestellt werden können. Das Tool serialisiert jeden verschachtelten Wert zu einem kompakten JSON-String und setzt ihn in doppelte Anführungszeichen, und zeigt eine Warnung mit den abgeflachten Schlüsseln, sodass das Verhalten nie stillschweigend ist.

Anwendung

  1. 1

    Füge dein JSON-Objekt ein

    Gib ein flaches JSON-Objekt in das Eingabefeld oben ein oder füge es ein. Du kannst auch auf 'Beispiel laden' klicken, um ein Konfigurationsobjekt, Werte, die Anführungszeichen benötigen, oder ein verschachteltes Objekt auszuprobieren.

  2. 2

    Live-.env-Ausgabe ansehen

    Die .env-Datei erscheint sofort im Ausgabe-Panel. Schalte 'Schlüssel normalisieren' für UPPER_SNAKE_CASE-Namen um, oder 'export-Präfix hinzufügen', wenn die Datei in einer Shell per source eingelesen wird.

  3. 3

    Kopieren oder Herunterladen

    Klicke auf Kopieren, um die .env in die Zwischenablage zu übernehmen, oder auf Herunterladen, um sie als .env-Datei zu speichern — bereit, in dein Projekt eingefügt und mit dotenv geladen zu werden.

Häufige JSON-Fallstricke

Array oder Skalar auf oberster Ebene

Eine .env-Datei ist eine flache Menge benannter Variablen, daher muss die Eingabe ein JSON-Objekt sein. Ein Array auf oberster Ebene oder ein nackter Wert wie ein String oder eine Zahl hat keine Schlüsselnamen, die auf Variablen abgebildet werden können, und das Tool meldet einen Fehler. Verpacke deine Daten zuerst in ein Objekt mit aussagekräftigen Schlüsseln.

✗ Falsch
["a", "b", "c"]
✓ Richtig
{"ITEMS": "a,b,c"}

Ungültige JSON-Syntax

Die Eingabe muss gültiges JSON sein. Nachgestellte Kommata, einfache Anführungszeichen und nicht zitierte Schlüssel sind häufige Fehler, die aus JavaScript übernommen werden, und verursachen einen Parse-Fehler mit Zeile und Spalte. Verwende doppelte Anführungszeichen für alle Schlüssel und String-Werte und entferne nachgestellte Kommata.

✗ Falsch
{'PORT': 8080,}
✓ Richtig
{"PORT": 8080}

Verschachtelte Struktur in der .env erwarten

Verschachtelte Objekte und Arrays können in einer flachen .env-Datei nicht nativ dargestellt werden. Das Tool serialisiert sie zu JSON-Strings und warnt dich, aber der Wert wird zu einem einzelnen opaken String. Wenn du die Struktur erhalten musst, konvertiere stattdessen zu YAML statt zu .env.

✗ Falsch
{"DB": {"host": "localhost", "port": 5432}}
✓ Richtig
{"DB_HOST": "localhost", "DB_PORT": 5432}

Schlüssel, die keine gültigen Variablennamen sind

Die meisten Shells und Loader akzeptieren nur Variablennamen, die [A-Za-z_][A-Za-z0-9_]* entsprechen — ein Schlüssel, der mit einer Ziffer beginnt oder Leerzeichen oder Bindestriche enthält, ist ungültig. Bei wörtlich beibehaltenen Schlüsseln warnt dich das Tool vor solchen Schlüsseln; Schlüssel normalisieren behebt Groß-/Kleinschreibung und Bindestriche, kann aber einen Namen, der mit einer Ziffer beginnt, nicht retten, also benenne solche Schlüssel in deinem JSON um.

✗ Falsch
{"2fa-enabled": true}
✓ Richtig
{"TWO_FA_ENABLED": true}

Nicht zitierte Strings, die Anführungszeichen benötigen

Wenn du das JSON von Hand schreibst, denke daran, dass ein Wert mit Leerzeichen oder einem # trotzdem ein gültiger JSON-String (in doppelten Anführungszeichen) sein muss. Das Tool zitiert ihn dann automatisch neu für die .env. Der Fehler ist, die JSON-Anführungszeichen auf der Eingabeseite zu vergessen, was ungültiges JSON erzeugt.

✗ Falsch
{"MSG": Hello World}
✓ Richtig
{"MSG": "Hello World"}

Häufige Anwendungsfälle

.env aus einem Konfigurationsexport erzeugen
Nimm einen JSON-Konfigurationsexport aus einer API, einem Einstellungs-Dashboard oder einem Secrets-Manager und verwandle ihn in eine einsatzbereite .env-Datei für die lokale Entwicklung oder einen Container.
.env-Vorlagen aufbauen
Baue ein JSON-Objekt, das die Variablen beschreibt, die ein neuer Dienst braucht, konvertiere es zu einer .env und committe eine .env.example, damit Teamkollegen genau wissen, welche Schlüssel auszufüllen sind.
JSON-konfigurierte Tools mit dotenv verbinden
Manche Tools geben Konfiguration als JSON aus, während deine Laufzeit eine .env erwartet. Konvertiere die JSON-Ausgabe in das dotenv-Format, damit beide Hälften der Pipeline sich auf dieselben Variablen einigen.
Per source einlesbare Shell-env-Dateien erzeugen
Aktiviere das export-Präfix, um eine Datei zu erzeugen, die du direkt in einer Shell oder einem CI-Schritt per source einlesen kannst, und verwandle einen JSON-Konfigurations-Blob in einem Einfügen in exportierte Umgebungsvariablen.
Konfiguration im Roundtrip
Kombiniere dies mit dem .env zu JSON Konverter, um Konfiguration als strukturiertes JSON zu bearbeiten und wieder in eine .env zu schreiben — das roundtrip-sichere Zitieren garantiert, dass Werte beide Richtungen überstehen.
Schlüssel mit gemischter Groß-/Kleinschreibung normalisieren
Konvertiere ein JSON-Objekt mit camelCase- oder kebab-case-Schlüsseln in eine .env mit konsistenten UPPER_SNAKE_CASE-Variablennamen mithilfe der Option Schlüssel normalisieren, passend zu den Umgebungsvariablen-Konventionen.

Technische Details

Nur Objekt-Eingabe mit typisierter Serialisierung
Die Eingabe wird mit dem nativen JSON.parse() des Browsers geparst und muss ein Objekt auf oberster Ebene sein; Arrays und Skalare werden mit einem klaren Fehler abgelehnt. Jede Eigenschaft der obersten Ebene wird nach Typ serialisiert: Zahlen und Booleans werden nackt geschrieben, null wird zu einem leeren Wert (KEY=), und Strings werden direkt geschrieben, es sei denn, sie enthalten ein Leerzeichen, einen Zeilenumbruch, # oder ein Anführungszeichen, in welchem Fall sie für die Roundtrip-Sicherheit in doppelte Anführungszeichen gesetzt und maskiert werden.
Verschachtelte Werte und Schlüsselnormalisierung
Verschachtelte Objekte und Arrays werden mit einem kompakten JSON.stringify serialisiert, in doppelte Anführungszeichen gesetzt und maskiert, mit einer Warnung, die die abgeflachten Schlüssel benennt. Der optionale Schritt Schlüssel normalisieren wandelt Schlüssel in UPPER_SNAKE_CASE um und löst die meisten ungültigen Namen auf; werden Schlüssel wörtlich beibehalten, löst jeder Schlüssel, der nicht [A-Za-z_][A-Za-z0-9_]* entspricht, eine Warnung über einen ungültigen Namen aus. Ein optionales export-Präfix kann jeder Zeile hinzugefügt werden.
Browserbasiert — kein Upload, kein Server
Die gesamte Verarbeitung geschieht vollständig in der JavaScript-Engine deines Browsers; zu keinem Zeitpunkt werden JSON-Daten über das Netzwerk übertragen. Der Serializer ist hauseigen ohne externe Abhängigkeiten geschrieben, da die Node-dotenv-Bibliothek nicht browsersicher ist. Eingaben größer als 200KB wechseln vom Live-Modus in den manuellen Modus (ein expliziter Konvertieren-Klick), damit der Browser reaktionsfähig bleibt.

Bewährte Praktiken

Behalte Schlüssel wörtlich, sofern du keine env-Konventionen brauchst
Lasse Schlüssel normalisieren deaktiviert, wenn die konsumierende App bereits die exakten Schlüsselnamen in deinem JSON erwartet, damit nichts unerwartet umbenannt wird. Aktiviere es nur, wenn du gezielt die UPPER_SNAKE_CASE-Konvention möchtest, die Umgebungsvariablen üblicherweise verwenden.
Verschachtelung absichtlich abflachen, nicht versehentlich
Ein verschachtelter Wert wird in der .env zu einem opaken JSON-String, den die meisten Apps nicht automatisch zurückparsen können. Wenn du die Abflachungs-Warnung siehst, forme das JSON lieber vor dem Konvertieren in flache, präfigierte Schlüssel um (DB_HOST, DB_PORT), oder wähle ein strukturiertes Format wie YAML.
Vertraue dem Auto-Zitieren für Roundtrips
Lass das Tool entscheiden, wann zitiert wird — es setzt nur die Werte in doppelte Anführungszeichen und maskiert sie, die es benötigen. Das hält die .env lesbar und garantiert zugleich, dass Werte mit Leerzeichen, Zeilenumbrüchen oder # einen Roundtrip zurück durch den .env zu JSON Konverter unverändert überstehen.
Geheimnisse nur in einem reinen Browser-Tool erzeugen
Das JSON, das du hier konvertierst, ist faktisch eine Menge von Zugangsdaten. Erzeuge eine .env nur in einem Tool, das vollständig im Browser läuft; überprüfe null Netzwerkanfragen in den DevTools. Dieser Konverter qualifiziert sich, anders als serverseitige oder API-gestützte Generatoren.
Validiere zuerst die JSON-Eingabe
Wenn das JSON von Hand geschrieben oder von einem Skript zusammengesetzt ist, validiere es zuerst mit dem JSON-Formatierer, um nachgestellte Kommata oder nicht zitierte Schlüssel abzufangen, damit du eine saubere .env statt eines verwirrenden Parse-Fehlers erhältst.

Häufig gestellte Fragen

Wie konvertiere ich JSON online zu einer .env-Datei?
Füge ein JSON-Objekt in das Eingabefeld oben ein. Das Tool erzeugt sofort eine .env-Datei in deinem Browser — kein Klick auf eine Schaltfläche nötig. Jede Eigenschaft der obersten Ebene wird zu einer Zeile KEY=VALUE. Du kannst im Optionen-Panel optional Schlüssel zu UPPER_SNAKE_CASE normalisieren oder ein export-Präfix hinzufügen und dann auf Kopieren klicken, um das Ergebnis zu übernehmen, oder auf Herunterladen, um es als .env-Datei zu speichern. Alles läuft lokal, sodass deine Geheimnisse dein Gerät nie verlassen.
Welche Art von JSON akzeptiert dies?
Die Eingabe muss ein JSON-Objekt sein (eine Menge von Schlüssel/Wert-Paaren auf oberster Ebene), weil eine .env-Datei grundsätzlich eine flache Liste von Variablen ist. Ein Array auf oberster Ebene oder ein nackter Skalar wie ein String oder eine Zahl kann nicht auf Umgebungsvariablen abgebildet werden, daher meldet das Tool einen Fehler und verlangt ein Objekt. Ungültiges JSON erzeugt ebenfalls einen Fehler mit bestmöglichen Zeilen- und Spaltennummern, damit du das Problem schnell finden kannst.
Wie werden Strings, Zahlen, Booleans und null geschrieben?
Zahlen und Booleans werden ohne Anführungszeichen geschrieben (PORT=8080, DEBUG=true). Ein null-Wert wird zu einer leeren Zuweisung (KEY=), die dotenv als leeren String lädt. Einfache Strings werden unverändert geschrieben, aber ein String, der Leerzeichen, einen Zeilenumbruch, ein # oder ein Anführungszeichen enthält, wird automatisch in doppelte Anführungszeichen gesetzt und maskiert, damit er korrekt zurückgeparst wird. Das bedeutet, die Ausgabe übersteht einen sauberen Roundtrip durch den dotenv-Parser und durch unseren begleitenden .env zu JSON Konverter.
Was passiert mit verschachtelten Objekten und Arrays?
.env-Dateien können keine Verschachtelung darstellen — jede Variable ist ein flacher String. Wenn ein Wert ein verschachteltes Objekt oder Array ist, serialisiert das Tool es zu einem kompakten JSON-String mit JSON.stringify, setzt es in doppelte Anführungszeichen und maskiert es. Eine nicht blockierende Warnung listet genau auf, welche Schlüssel auf diese Weise abgeflacht wurden, sodass du immer weißt, dass die Struktur kollabiert wurde. Wenn deine Daten tief verschachtelt sind, bewahrt ein Format wie JSON zu YAML die Hierarchie weitaus besser, als .env es kann.
Was macht die Option Schlüssel normalisieren?
Standardmäßig werden die ursprünglichen JSON-Schlüssel genau so beibehalten, wie sie geschrieben sind, sodass keine Daten verloren gehen — und in diesem Modus wird jeder Schlüssel, der nicht bereits ein gültiger Umgebungsvariablenname ist (die meisten Shells und Loader akzeptieren nur Namen, die [A-Za-z_][A-Za-z0-9_]* entsprechen), mit einer Warnung markiert, damit du ihn umbenennen kannst. Mit aktiviertem Schlüssel normalisieren werden Schlüssel zu UPPER_SNAKE_CASE umgewandelt — dem konventionellen Stil für Umgebungsvariablen (databaseUrl wird DATABASE_URL, enable-signup wird ENABLE_SIGNUP) —, was die meisten ungültigen Namen automatisch auflöst.
Werden meine JSON-Daten an einen Server gesendet?
Nein. Die gesamte Konvertierung geschieht vollständig in deinem Browser mit JavaScript. Das JSON, das du einfügst — das oft API-Keys, Datenbank-Zugangsdaten und Tokens enthält, die du gleich in eine .env schreiben willst — wird nie übertragen, nie auf einem Server gespeichert und nie protokolliert. Du kannst das bestätigen, indem du den Netzwerk-Tab deines Browsers öffnest und beobachtest, dass das Einfügen null Anfragen auslöst. Das macht es sicher, eine echte Produktions-.env zu erzeugen, nicht nur ein Beispiel.

Verwandte Werkzeuge

Alle Werkzeuge anzeigen →