Skip to content

Convertitore da JSON a .env

Incolla un oggetto JSON online e ottieni subito un file .env. Generatore dotenv web: chiavi e segreti non lasciano mai il browser. 100% privato, senza upload.

Niente tracciamento Funziona nel browser Gratuito
Opzioni · mantieni le chiavi · nessun export
0 caratteri
.env Output
0 righe
Verificato per la gestione dell'input solo oggetto, le virgolette sicure per il round-trip, l'appiattimento dei valori annidati e la normalizzazione delle chiavi — Go Tools Engineering Team · Jun 12, 2026

Cos'è un file .env?

Un file .env (file dotenv) è un elenco di coppie CHIAVE=VALORE in testo semplice che contiene configurazione d'ambiente e segreti al di fuori del codice sorgente. È lo standard di fatto per Node.js, Vite, Next.js, Python, Ruby e Docker Compose: la libreria dotenv carica il file e inietta ogni coppia nell'ambiente del processo. Poiché contiene comunemente password di database, chiavi API e token di accesso, un file .env è trattato come sensibile e tenuto fuori dal controllo di versione.

Generare un file .env da JSON è l'inverso del comune compito di analizzare una configurazione: hai già la configurazione come oggetto JSON — da una risposta API, un'esportazione di configurazione, un dump di un gestore di segreti o uno script che costruisce le impostazioni a livello di programmazione — e ti serve un file .env da inserire in un progetto o consegnare a un container. Questo convertitore percorre le chiavi di primo livello del tuo oggetto JSON e scrive una riga CHIAVE=VALORE correttamente racchiusa tra virgolette per proprietà.

Questo strumento è costruito attorno ad alcune scelte deliberate:

**1. Virgolette sicure per il round-trip.** Numeri e booleani vengono scritti nudi, null diventa un valore vuoto e qualsiasi stringa che contiene uno spazio, un a capo, un # o una virgoletta viene racchiusa automaticamente tra virgolette doppie e sottoposta a escape. Il risultato viene analizzato in modo pulito al ritorno attraverso dotenv e attraverso il Convertitore da .env a JSON companion, così che un valore non cambi mai significato nel round-trip.

**2. Gestione onesta dell'annidamento.** Un file .env è piatto per definizione. Anziché scartare silenziosamente i dati annidati, lo strumento serializza ogni oggetto o array annidato in una stringa JSON compatta e ti avvisa di quali chiavi sono state appiattite, così da poter decidere se il .env è davvero la destinazione giusta.

**3. Normalizzazione opzionale delle chiavi.** Le chiavi vengono mantenute alla lettera per impostazione predefinita per evitare di perdere informazioni. Attiva Normalizza le chiavi per convertire camelCase o kebab-case nella convenzione UPPER_SNAKE_CASE usata dalle variabili d'ambiente, con un avviso per qualsiasi chiave che comunque non riesca a formare un nome valido.

**4. Privacy 100% nel browser.** Il JSON che incolli — di solito proprio le credenziali che stai per scrivere in un .env — non lascia mai il browser. Nessun upload, nessun viaggio verso il server, nessuna registrazione; verifica zero richieste di rete nella scheda Rete dei DevTools.

Prima di convertire, puoi validare o formattare il JSON con il Formattatore JSON, oppure annullare l'escape di una stringa JSON con Escape JSON. Se la tua configurazione si esprime meglio con una struttura, JSON in YAML preserva l'annidamento che un .env piatto non può.

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

Caratteristiche principali

Virgolette sicure per il round-trip

Numeri e booleani vengono scritti nudi, null diventa un valore vuoto e le stringhe con spazi, a capo, # o virgolette vengono racchiuse automaticamente tra virgolette doppie e sottoposte a escape così da essere analizzate in modo pulito al ritorno attraverso dotenv.

Gestione onesta dell'annidamento

Oggetti e array annidati non possono esistere in un .env piatto, quindi ciascuno viene serializzato in una stringa JSON compatta e un avviso elenca esattamente quali chiavi sono state appiattite, mai una modifica silenziosa.

Normalizzazione opzionale delle chiavi

Mantieni le chiavi alla lettera per impostazione predefinita — con un avviso per qualsiasi chiave che non sia un nome env valido — oppure attiva Normalizza le chiavi per convertire camelCase e kebab-case nella convenzione UPPER_SNAKE_CASE usata dalle variabili d'ambiente.

Prefisso export opzionale

Anteponi export a ogni riga così che il file .env generato possa essere caricato direttamente con source in una shell, in linea con lo stile degli script di CI e deploy.

Conversione dal vivo

L'output .env si aggiorna all'istante mentre digiti o incolli il JSON. Gli input grandi (oltre 200 KB) passano alla modalità manuale con un pulsante Converti per mantenere reattivo il browser.

Privacy 100% nel browser

Tutta la conversione avviene localmente nel tuo browser. Il JSON che incolli — chiavi API, credenziali, token — non viene mai caricato, mai registrato e mai memorizzato su alcun server.

Esempi

Da oggetto di configurazione a .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 oggetto di configurazione JSON piatto diventa un file .env pulito. Numeri e booleani vengono scritti senza virgolette; le stringhe semplici vengono scritte così come sono. Pronto per essere salvato come .env e caricato con dotenv.

Valori che richiedono le virgolette

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

Le stringhe che contengono spazi, a capo, # o virgolette vengono racchiuse automaticamente tra virgolette doppie e sottoposte a escape così da sopravvivere a un round-trip attraverso dotenv. Un valore null diventa un'assegnazione vuota (CHIAVE=).

Normalizza le chiavi in UPPER_SNAKE_CASE

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

Con l'opzione Normalizza le chiavi attiva, le chiavi in camelCase e kebab-case vengono convertite nella convenzione UPPER_SNAKE_CASE usata dalle variabili d'ambiente. Con l'opzione disattivata, le chiavi originali vengono mantenute alla lettera.

Oggetto annidato appiattito in una stringa 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\"]"

I file .env sono piatti, quindi oggetti e array annidati non possono essere rappresentati in modo nativo. Lo strumento serializza ogni valore annidato in una stringa JSON compatta e la racchiude tra virgolette doppie, e mostra un avviso che elenca quali chiavi sono state appiattite così che il comportamento non sia mai silenzioso.

Come si usa

  1. 1

    Incolla il tuo oggetto JSON

    Inserisci o incolla un oggetto JSON piatto nel campo di input qui sopra. Puoi anche cliccare 'Carica esempio' per provare un oggetto di configurazione, valori che richiedono le virgolette o un oggetto annidato.

  2. 2

    Vedi l'output .env dal vivo

    Il file .env appare all'istante nel pannello di output. Attiva 'Normalizza le chiavi' per nomi in UPPER_SNAKE_CASE, oppure 'Aggiungi prefisso export' se il file verrà caricato con source in una shell.

  3. 3

    Copia o scarica

    Clicca Copia per ottenere il .env negli appunti, oppure Scarica per salvarlo come file .env, pronto da inserire nel tuo progetto e caricare con dotenv.

Insidie comuni del JSON

Array o scalare di primo livello

Un file .env è un insieme piatto di variabili con nome, quindi l'input deve essere un oggetto JSON. Un array di primo livello o un valore nudo come una stringa o un numero non ha nomi di chiave da mappare su variabili, e lo strumento segnala un errore. Avvolgi prima i tuoi dati in un oggetto con chiavi descrittive.

✗ Errato
["a", "b", "c"]
✓ Corretto
{"ITEMS": "a,b,c"}

Sintassi JSON non valida

L'input deve essere JSON valido. Virgole finali, virgolette singole e chiavi non racchiuse tra virgolette sono errori comuni copiati da JavaScript e causano un errore di analisi con riga e colonna. Usa le virgolette doppie per tutte le chiavi e i valori stringa e rimuovi eventuali virgole finali.

✗ Errato
{'PORT': 8080,}
✓ Corretto
{"PORT": 8080}

Aspettarsi una struttura annidata nel .env

Oggetti e array annidati non possono essere rappresentati in modo nativo in un file .env piatto. Lo strumento li serializza in stringhe JSON e ti avvisa, ma il valore diventa una singola stringa opaca. Se hai bisogno di preservare la struttura, converti in YAML anziché in .env.

✗ Errato
{"DB": {"host": "localhost", "port": 5432}}
✓ Corretto
{"DB_HOST": "localhost", "DB_PORT": 5432}

Chiavi che non sono nomi di variabili validi

La maggior parte delle shell e dei caricatori accetta solo nomi di variabili che corrispondono a [A-Za-z_][A-Za-z0-9_]* — una chiave che inizia con una cifra o contiene spazi o trattini non è valida. Con le chiavi mantenute alla lettera lo strumento ti avvisa di tali chiavi; Normalizza le chiavi corregge maiuscole/minuscole e trattini ma non può recuperare un nome che inizia con una cifra, quindi rinomina quelle chiavi nel tuo JSON.

✗ Errato
{"2fa-enabled": true}
✓ Corretto
{"TWO_FA_ENABLED": true}

Stringhe senza virgolette che richiedono le virgolette

Se scrivi il JSON a mano, ricorda che un valore con spazi o un # deve comunque essere una stringa JSON valida (tra virgolette doppie). Lo strumento poi lo riracchiude tra virgolette per il .env automaticamente. L'errore è dimenticare le virgolette JSON sul lato input, il che produce un JSON non valido.

✗ Errato
{"MSG": Hello World}
✓ Corretto
{"MSG": "Hello World"}

Casi d'uso comuni

Generare un .env da un'esportazione di configurazione
Prendi un'esportazione di configurazione JSON da un'API, una dashboard di impostazioni o un gestore di segreti e trasformala in un file .env pronto all'uso per lo sviluppo locale o un container.
Creare modelli .env
Costruisci un oggetto JSON che descrive le variabili di cui un nuovo servizio ha bisogno, convertilo in un .env e committa un .env.example così che i compagni di squadra sappiano esattamente quali chiavi compilare.
Collegare strumenti configurati in JSON a dotenv
Alcuni strumenti emettono la configurazione come JSON mentre il tuo runtime si aspetta un .env. Converti l'output JSON nel formato dotenv così che entrambe le metà della pipeline concordino sulle stesse variabili.
Produrre file env shell caricabili con source
Abilita il prefisso export per generare un file che puoi caricare direttamente con source in una shell o in un passaggio CI, trasformando un blob di configurazione JSON in variabili d'ambiente esportate in un solo incolla.
Configurazione round-trip
Abbinalo al Convertitore da .env a JSON per modificare la configurazione come JSON strutturato e riscriverla in .env: le virgolette sicure per il round-trip garantiscono che i valori sopravvivano in entrambe le direzioni.
Normalizzare chiavi con maiuscole/minuscole miste
Converti un oggetto JSON con chiavi in camelCase o kebab-case in un .env con nomi di variabili coerenti in UPPER_SNAKE_CASE usando l'opzione Normalizza le chiavi, in linea con le convenzioni delle variabili d'ambiente.

Dettagli tecnici

Input solo oggetto con serializzazione tipizzata
L'input viene analizzato con il JSON.parse() nativo del browser e deve essere un oggetto di primo livello; array e scalari vengono rifiutati con un errore chiaro. Ogni proprietà di primo livello viene serializzata per tipo: numeri e booleani vengono scritti nudi, null diventa un valore vuoto (CHIAVE=), e le stringhe vengono scritte direttamente a meno che non contengano uno spazio, un a capo, un # o una virgoletta, nel qual caso vengono racchiuse tra virgolette doppie e sottoposte a escape per la sicurezza del round-trip.
Valori annidati e normalizzazione delle chiavi
Oggetti e array annidati vengono serializzati con un JSON.stringify compatto, racchiusi tra virgolette doppie e sottoposti a escape, con un avviso che nomina le chiavi appiattite. Il passaggio opzionale Normalizza le chiavi converte le chiavi in UPPER_SNAKE_CASE, risolvendo la maggior parte dei nomi non validi; quando le chiavi vengono mantenute alla lettera, qualsiasi chiave che non corrisponda a [A-Za-z_][A-Za-z0-9_]* attiva un avviso di nome non valido. Un prefisso export opzionale può essere aggiunto a ogni riga.
Basato sul browser — nessun upload, nessun server
Tutta l'elaborazione avviene interamente nel motore JavaScript del tuo browser; nessun dato JSON viene trasmesso in rete in alcun momento. Il serializzatore è scritto internamente senza dipendenze esterne, dato che la libreria Node dotenv non è sicura per il browser. Gli input più grandi di 200 KB passano dalla modalità dal vivo alla modalità manuale (un clic esplicito su Converti) per mantenere reattivo il browser.

Buone pratiche

Mantieni le chiavi alla lettera a meno che non ti servano le convenzioni env
Lascia Normalizza le chiavi disattivato quando l'app consumatrice si aspetta già i nomi di chiave esatti nel tuo JSON, così niente viene rinominato inaspettatamente. Attivalo solo quando vuoi specificamente la convenzione UPPER_SNAKE_CASE usata convenzionalmente dalle variabili d'ambiente.
Appiattisci l'annidamento di proposito, non per caso
Un valore annidato diventa una stringa JSON opaca nel .env, che la maggior parte delle app non può analizzare di nuovo automaticamente. Quando vedi l'avviso di appiattimento, preferisci rimodellare il JSON in chiavi piatte e con prefisso (DB_HOST, DB_PORT) prima di convertire, oppure scegli un formato strutturato come YAML.
Affidati alle virgolette automatiche per i round-trip
Lascia che sia lo strumento a decidere quando racchiudere tra virgolette: racchiude tra virgolette doppie e sottopone a escape solo i valori che ne hanno bisogno. Questo mantiene il .env leggibile garantendo al contempo che i valori con spazi, a capo o # sopravvivano immutati a un round-trip attraverso il Convertitore da .env a JSON.
Genera segreti solo in uno strumento esclusivamente lato browser
Il JSON che converti qui è di fatto un insieme di credenziali. Genera un .env solo in uno strumento che gira interamente nel browser; verifica zero richieste di rete nei DevTools. Questo convertitore lo soddisfa, a differenza dei generatori lato server o basati su API.
Valida prima l'input JSON
Se il JSON è scritto a mano o assemblato da uno script, validalo prima con il Formattatore JSON per intercettare virgole finali o chiavi non racchiuse tra virgolette, così ottieni un .env pulito invece di un confuso errore di analisi.

Domande frequenti

Come converto JSON in un file .env online?
Incolla un oggetto JSON nel campo di input qui sopra. Lo strumento genera un file .env all'istante nel browser, senza bisogno di cliccare alcun pulsante. Ogni proprietà di primo livello diventa una riga CHIAVE=VALORE. Puoi facoltativamente normalizzare le chiavi in UPPER_SNAKE_CASE o aggiungere un prefisso export dal pannello Opzioni, poi cliccare Copia per ottenere il risultato o Scarica per salvarlo come file .env. Tutto viene eseguito localmente, quindi i tuoi segreti non lasciano mai il dispositivo.
Che tipo di JSON accetta?
L'input deve essere un oggetto JSON (un insieme di coppie chiave/valore al primo livello), perché un file .env è fondamentalmente un elenco piatto di variabili. Un array di primo livello o uno scalare nudo come una stringa o un numero non possono mappare su variabili d'ambiente, quindi lo strumento segnala un errore chiedendo un oggetto. Anche un JSON non valido produce un errore con numeri di riga e colonna nei limiti del possibile, così da localizzare rapidamente il problema.
Come vengono scritti stringhe, numeri, booleani e null?
Numeri e booleani vengono scritti senza virgolette (PORT=8080, DEBUG=true). Un valore null diventa un'assegnazione vuota (CHIAVE=), che dotenv carica come stringa vuota. Le stringhe semplici vengono scritte così come sono, ma una stringa che contiene spazi, un a capo, un # o un carattere virgoletta viene racchiusa automaticamente tra virgolette doppie e sottoposta a escape così da essere analizzata correttamente al ritorno. Questo significa che l'output fa un round-trip pulito attraverso il parser dotenv e attraverso il nostro Convertitore da .env a JSON companion.
Cosa succede a oggetti e array annidati?
I file .env non possono rappresentare l'annidamento: ogni variabile è una stringa piatta. Quando un valore è un oggetto o un array annidato, lo strumento lo serializza in una stringa JSON compatta con JSON.stringify, la racchiude tra virgolette doppie e la sottopone a escape. Un avviso non bloccante elenca esattamente quali chiavi sono state appiattite in questo modo, così da sapere sempre che la struttura è stata collassata. Se i tuoi dati sono profondamente annidati, un formato come JSON in YAML preserva la gerarchia molto meglio di quanto possa fare un .env.
Cosa fa l'opzione Normalizza le chiavi?
Per impostazione predefinita le chiavi JSON originali vengono mantenute esattamente come scritte, così non si perde alcun dato — e in quella modalità qualsiasi chiave che non sia già un nome di variabile d'ambiente valido (la maggior parte delle shell e dei caricatori accetta solo nomi che corrispondono a [A-Za-z_][A-Za-z0-9_]*) viene segnalata con un avviso così da poterla rinominare. Con Normalizza le chiavi abilitato, le chiavi vengono convertite in UPPER_SNAKE_CASE — lo stile convenzionale per le variabili d'ambiente (databaseUrl diventa DATABASE_URL, enable-signup diventa ENABLE_SIGNUP) — che risolve automaticamente la maggior parte dei nomi non validi.
I dati del mio JSON vengono inviati a un server?
No. Tutta la conversione avviene interamente nel tuo browser con JavaScript. Il JSON che incolli — che spesso contiene chiavi API, credenziali di database e token che stai per scrivere in un file .env — non viene mai trasmesso, mai memorizzato su alcun server e mai registrato. Puoi verificarlo aprendo la scheda Rete del browser e osservando che incollare non genera alcuna richiesta. È questo che rende sicuro generare un .env di produzione reale, non solo un campione.

Strumenti correlati

Vedi tutti gli strumenti →