Skip to content

Convertitore da .env a JSON

Incolla un file .env online e ottieni subito il JSON. Password, chiavi API e token non lasciano mai il browser: parser dotenv web, 100% privato, senza upload.

Niente tracciamento Funziona nel browser Gratuito
Opzioni · 2 spazi · stringhe
Indentazione
0 caratteri
JSON Output
0 righe
Verificato per compatibilità di analisi dotenv, gestione di virgolette ed escape e comportamento sulle chiavi duplicate — 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 usato per tenere configurazione e segreti fuori dal codice sorgente. È lo standard di fatto per le variabili d'ambiente in Node.js, Vite, Next.js, Python, Ruby, Docker Compose e quasi ogni framework moderno: la libreria dotenv e le sue versioni portate caricano il file e iniettano ogni coppia nell'ambiente del processo. Poiché il file contiene spesso password di database, chiavi API, segreti client OAuth e token di accesso, è quasi sempre escluso da git e trattato come sensibile.

Convertire un file .env in JSON è un'operazione frequente: devi fornire la configurazione a uno strumento che legge JSON, validarla rispetto a un JSON Schema, importarla in un gestore di segreti, generare oggetti di configurazione tipizzati o semplicemente esaminare a colpo d'occhio un lungo .env come dati strutturati. Questo convertitore trasforma l'elenco piatto di coppie in un singolo oggetto JSON, una proprietà per chiave.

Questo strumento è costruito attorno ad alcune scelte deliberate:

**1. Stringhe per impostazione predefinita, tipi su richiesta.** dotenv non forza mai i tipi: in fase di esecuzione ogni valore di process.env è una stringa. L'output predefinito rispetta esattamente questo, così il JSON corrisponde a ciò che la tua app vede davvero. Quando vuoi un JSON tipizzato, l'interruttore opzionale Inferisci i tipi promuove numeri, booleani e valori null non racchiusi tra virgolette, mentre i valori tra virgolette restano stringhe perché le virgolette sono un segnale esplicito.

**2. Analisi dotenv fedele.** Commenti, righe vuote, il prefisso export, virgolette singole contro doppie, sequenze di escape, valori multi-riga tra virgolette doppie e commenti inline sui valori non racchiusi tra virgolette sono tutti gestiti nel modo in cui li gestisce la libreria dotenv: nessuna sorpresa quando confronti il JSON con ciò che la tua applicazione carica.

**3. Sicurezza sulle chiavi duplicate.** Quando una chiave è definita due volte vince il valore successivo, e un avviso ti dice quali chiavi erano duplicate così che un segreto accidentalmente oscurato non sfugga mai inosservato.

**4. Privacy 100% nel browser.** I dati del tuo .env non lasciano mai il browser. Non c'è alcun upload, nessun viaggio verso il server e nessuna registrazione: puoi verificare zero richieste di rete nella scheda Rete dei DevTools. Questo è l'unico modo responsabile di convertire un .env reale online, dato che il file è essenzialmente un elenco di credenziali.

Dopo la conversione, puoi formattare o validare il risultato con il Formattatore JSON, eseguirne l'escape per incorporarlo in un'altra stringa con Escape JSON oppure procedere nella direzione opposta con il Convertitore da JSON a .env companion. Se la tua configurazione vive in YAML, prova YAML in 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"
// }

Caratteristiche principali

Analisi dotenv fedele

Gestisce commenti, il prefisso export, virgolette singole e doppie, sequenze di escape (\n \t \r \\ \"), valori multi-riga tra virgolette doppie e commenti inline, esattamente nel modo in cui lo fa la libreria dotenv.

Stringhe per impostazione predefinita, tipi su richiesta

I valori sono stringhe JSON per impostazione predefinita per corrispondere al comportamento di dotenv in fase di esecuzione. Attiva Inferisci i tipi per promuovere numeri, booleani e valori null non racchiusi tra virgolette; i valori tra virgolette restano sempre stringhe.

Avvisi sulle chiavi duplicate

Se una chiave è definita due volte vince l'ultimo valore (comportamento dotenv) e un avviso elenca ogni chiave duplicata, così che un segreto sovrascritto silenziosamente non possa sfuggire inosservato.

Conversione dal vivo

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

Indentazione 2 o 4 spazi

Alterna tra indentazione di 2 e 4 spazi per l'output JSON per adattarti allo stile del tuo codice o agli strumenti a valle.

Privacy 100% nel browser

Tutta l'analisi avviene localmente nel tuo browser. I dati del tuo .env — password di database, chiavi API, token — non vengono mai caricati, mai registrati e mai memorizzati su alcun server.

Esempi

File .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 tipico file .env di Node.js / Vite. Per impostazione predefinita ogni valore diventa una stringa JSON (lo standard dotenv). Le righe di commento e le righe vuote vengono ignorate. Attiva Inferisci i tipi se vuoi che 10 → numero e true → booleano.

Ambiente 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"
}

Trasforma in JSON l'env_file che il tuo stack Docker Compose legge, così da caricarlo in uno script, un validatore di configurazione o un gestore di segreti. Niente viene caricato: sicuro anche per credenziali reali.

Modello di segreti CI con prefisso 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"
}

I file .env in stile shell antepongono spesso export a ogni riga per poter essere caricati con source. Il parser rimuove automaticamente il prefisso export e ti restituisce chiavi JSON pulite.

File .env complesso: virgolette, escape, multi-riga e commenti inline

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": ""
}

Mostra tutti i casi limite di dotenv insieme: i commenti inline sui valori non racchiusi tra virgolette vengono rimossi, i valori tra virgolette doppie elaborano gli escape \n \t \r \\ \", i valori tra virgolette singole vengono mantenuti alla lettera e un valore tra virgolette doppie può estendersi su più righe fino alla virgoletta di chiusura (utile per le chiavi PEM).

Come si usa

  1. 1

    Incolla il tuo file .env

    Inserisci o incolla il contenuto del tuo .env nel campo di input qui sopra. Puoi anche cliccare 'Carica esempio' per provare un .env Node/Vite, un file env Docker Compose o un modello di segreti CI.

  2. 2

    Vedi l'output JSON dal vivo

    Il JSON appare all'istante nel pannello di output. Attiva 'Inferisci i tipi' se vuoi numeri e booleani al posto delle stringhe, e scegli un'indentazione di 2 o 4 spazi.

  3. 3

    Copia o scarica

    Clicca Copia per ottenere il JSON negli appunti, oppure Scarica per salvarlo come file .json, pronto per un caricatore di configurazione, un gestore di segreti o qualsiasi strumento che legge JSON.

Insidie comuni dei file .env

Segno = mancante su una riga

Ogni riga non di commento e non vuota deve essere una coppia CHIAVE=VALORE. Una riga senza il segno = non può essere analizzata e lo strumento segnala un errore con il numero di riga. Una chiave nuda senza valore va scritta come CHIAVE= (valore vuoto).

✗ Errato
DATABASE_URL
DEBUG true
✓ Corretto
DATABASE_URL=
DEBUG=true

Spazi attorno al segno =

dotenv separa al primo = senza spazi intorno. Scrivere CHIAVE = valore rende la chiave 'CHIAVE ' (con uno spazio finale) e il valore ' valore' (con uno spazio iniziale). Rimuovi gli spazi, oppure racchiudi il valore tra virgolette se deve contenere spazi iniziali.

✗ Errato
API_KEY = abc123
✓ Corretto
API_KEY=abc123

Valore non racchiuso tra virgolette divorato da un commento inline

Su un valore non racchiuso tra virgolette, uno spazio seguito da # avvia un commento inline e tutto ciò che viene dopo viene scartato. Se il tuo valore contiene legittimamente un #, racchiudi il valore tra virgolette così che il # venga preservato.

✗ Errato
COLOR=#ff0000
✓ Corretto
COLOR="#ff0000"

Aspettarsi gli escape nelle virgolette singole

I valori tra virgolette singole sono letterali: \n resta una barra rovesciata e una n, non diventa un a capo. Usa le virgolette doppie quando vuoi che le sequenze di escape come \n, \t o \" vengano elaborate.

✗ Errato
GREETING='Hello\nWorld'
✓ Corretto
GREETING="Hello\nWorld"

Virgoletta doppia non chiusa in un valore multi-riga

Un valore tra virgolette doppie può estendersi su più righe, ma deve essere chiuso con una virgoletta doppia corrispondente. Se la virgoletta di chiusura manca, il parser continua a consumare righe fino alla fine del file. Assicurati che i segreti multi-riga come le chiavi PEM terminino con una virgoletta di chiusura.

✗ Errato
KEY="-----BEGIN-----
line two
✓ Corretto
KEY="-----BEGIN-----
line two
-----END-----"

Chiavi duplicate sovrascritte silenziosamente

Se la stessa chiave compare due volte, vince l'ultimo valore e quello precedente va perso. Lo strumento ti avvisa, ma la soluzione più pulita è rimuovere il duplicato così che il valore previsto sia inequivocabile.

✗ Errato
PORT=3000
PORT=8080
✓ Corretto
PORT=8080

Casi d'uso comuni

Fornire la configurazione a strumenti basati su JSON
Converti un file .env in JSON per caricare la configurazione d'ambiente in strumenti, script e SDK che leggono JSON anziché variabili d'ambiente: validatori di configurazione, controllori di schema e generatori di codice.
Importare segreti in un gestore
Molti gestori di segreti (AWS Secrets Manager, Vault, Doppler) accettano JSON per l'importazione in blocco. Converti prima un file .env in un oggetto JSON, poi carica l'intero insieme in un'unica operazione invece di una variabile alla volta.
Esaminare un lungo .env a colpo d'occhio
Trasforma un .env esteso in JSON strutturato e indentato così da scorrere le chiavi, individuare i duplicati tramite l'avviso ed esaminare la configurazione in un formato leggibile prima di confermare le modifiche.
Generare oggetti di configurazione tipizzati
Abilita Inferisci i tipi per ottenere numeri, booleani e null nel JSON, poi forniscilo a un livello di configurazione tipizzato o a un passaggio da JSON a TypeScript per derivare un'interfaccia per le tue variabili d'ambiente.
Validare rispetto a un JSON Schema
Converti .env in JSON ed eseguilo attraverso un validatore JSON Schema per imporre chiavi obbligatorie, formati dei valori ed enum consentiti in CI, intercettando ambienti mal configurati prima del deploy.
Migrare la configurazione env_file di Docker Compose
Trasforma in JSON l'env_file che il tuo stack Compose legge per usarlo in un altro strumento di orchestrazione, un server di configurazione o la documentazione, senza esporre credenziali reali ad alcun servizio esterno.

Dettagli tecnici

Analisi riga per riga compatibile con dotenv
L'input viene analizzato riga per riga. Le righe vuote e le righe di commento (primo carattere non vuoto #) vengono ignorate, un prefisso opzionale export viene rimosso e ogni riga restante viene separata al primo = in chiave e valore. Alle chiavi vengono rimossi gli spazi circostanti. I valori seguono le regole dotenv: le virgolette doppie elaborano gli escape \n \t \r \\ \" e consentono estensioni multi-riga, le virgolette singole sono letterali e i valori non racchiusi tra virgolette rimuovono gli spazi finali e i commenti inline.
Inferenza dei tipi opzionale
Per impostazione predefinita tutti i valori vengono emessi come stringhe JSON, in corrispondenza con il comportamento di dotenv in fase di esecuzione dove i valori di process.env sono sempre stringhe. Con Inferisci i tipi abilitato, i valori non racchiusi tra virgolette vengono promossi: le stringhe numeriche diventano numeri JSON, true/false diventano booleani e i valori vuoti o null diventano null JSON. I valori tra virgolette non vengono mai inferiti: le virgolette li marcano come stringhe esplicite. Le chiavi duplicate si risolvono con la regola dell'ultima che vince e un avviso.
Basato sul browser — nessun upload, nessun server
Tutta l'elaborazione avviene interamente nel motore JavaScript del tuo browser; nessun dato del .env viene trasmesso in rete in alcun momento. Non ci sono dipendenze esterne perché il parser è scritto internamente: la libreria Node dotenv si appoggia al file system e 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 l'output stringa predefinito per corrispondere a dotenv
dotenv carica ogni valore come stringa, quindi l'output stringa predefinito riflette esattamente ciò che la tua applicazione vede in fase di esecuzione. Abilita Inferisci i tipi solo quando il consumatore a valle si aspetta davvero un JSON tipizzato, altrimenti rischi una discrepanza in cui '0' o 'false' si comporta in modo diverso nel JSON rispetto all'app in esecuzione.
Racchiudi tra virgolette i valori che contengono # o spazi
Sui valori non racchiusi tra virgolette uno spazio seguito da # avvia un commento inline, e gli spazi finali vengono rimossi. Se un valore contiene legittimamente un # (colori esadecimali, URL con frammento) o spazi significativi, racchiudilo tra virgolette doppie così che venga preservato alla lettera nel JSON.
Risolvi le chiavi duplicate alla fonte
Lo strumento mantiene l'ultimo valore e ti avvisa quando una chiave è duplicata, ma un duplicato in un file .env è quasi sempre un errore. Rimuovi la riga ridondante così che non ci sia ambiguità su quale segreto sia attivo.
Non incollare mai segreti di produzione in convertitori lato server
Poiché un file .env è di fatto un elenco di credenziali, convertilo solo in uno strumento che gira interamente nel browser. Questo convertitore lo fa — verifica zero richieste di rete nei DevTools — quindi è sicuro per segreti reali, a differenza dei convertitori lato server o basati su API.
Valida il JSON prima di usarlo a valle
Dopo la conversione, esegui il JSON attraverso il Formattatore JSON per confermare la struttura prima di fornirlo a un validatore di schema, a un'importazione di gestore di segreti o a un caricatore di configurazione, così che una sorpresa strutturale emerga subito.

Domande frequenti

Come converto un file .env in JSON online?
Incolla il contenuto del tuo file .env nel campo di input qui sopra. Lo strumento lo analizza in JSON all'istante nel browser, senza bisogno di cliccare alcun pulsante. Ogni riga CHIAVE=VALORE diventa una proprietà JSON. Puoi scegliere un'indentazione di 2 o 4 spazi dal pannello Opzioni, poi cliccare Copia per ottenere il JSON o Scarica per salvarlo come file .json. Tutto viene eseguito localmente, quindi i tuoi segreti non lasciano mai il dispositivo.
I valori vengono convertiti in numeri e booleani o mantenuti come stringhe?
Per impostazione predefinita ogni valore è mantenuto come stringa, in perfetta corrispondenza con lo standard dotenv. dotenv stesso non forza mai i tipi — i valori di process.env sono sempre stringhe — quindi questa impostazione predefinita mantiene il JSON fedele a ciò che la tua applicazione vede effettivamente in fase di esecuzione. Se preferisci un JSON tipizzato, attiva l'opzione Inferisci i tipi. Con essa abilitata, i valori non racchiusi tra virgolette che sembrano numeri diventano numeri JSON, true e false diventano booleani e un valore vuoto o null diventa null JSON. I valori tra virgolette restano sempre stringhe anche con Inferisci i tipi attivo, perché le virgolette indicano una stringa esplicita.
Cosa succede se la stessa chiave compare due volte nel mio file .env?
Seguendo il comportamento di dotenv, vince l'ultima occorrenza: il valore successivo sovrascrive quello precedente. Poiché un valore scartato silenziosamente è una causa comune di configurazione errata, lo strumento mostra anche un avviso non bloccante che elenca esattamente quali chiavi erano duplicate, così puoi confermare quale valore è finito nel JSON. L'output resta comunque un oggetto JSON valido con una voce per chiave.
Come vengono gestiti virgolette, escape e valori multi-riga?
I valori tra virgolette doppie elaborano le sequenze di escape: \n diventa un a capo, \t una tabulazione, \r un ritorno a capo, \\ una barra rovesciata e \" una virgoletta doppia letterale. Un valore tra virgolette doppie può anche estendersi su più righe fino alla virgoletta di chiusura, comodo per chiavi private PEM e certificati. I valori tra virgolette singole sono trattati alla lettera senza elaborazione degli escape, proprio come nella shell. I valori non racchiusi tra virgolette arrivano fino alla fine della riga, con gli spazi finali rimossi e i commenti inline eliminati (uno spazio seguito da # avvia un commento). Questo corrisponde al modo in cui la libreria dotenv analizza i file.
Questo parser è coerente con la libreria dotenv?
Sì. Le regole di analisi seguono le convenzioni dotenv ampiamente diffuse: le righe di commento con # e le righe vuote vengono ignorate, il prefisso opzionale export viene rimosso, le chiavi vengono separate al primo segno =, le virgolette singole sono letterali, le virgolette doppie elaborano gli escape e consentono valori multi-riga, i valori non racchiusi tra virgolette rimuovono gli spazi circostanti e finali e tutti i valori per impostazione predefinita sono stringhe. L'interruttore opzionale Inferisci i tipi è una comodità aggiuntiva sovrapposta: è disattivato per impostazione predefinita proprio perché l'output corrisponda a ciò che dotenv caricherebbe.
Può gestire configurazioni annidate o raggruppate?
I file .env sono volutamente piatti: un elenco di coppie chiave/valore senza annidamento. Questo convertitore produce un singolo oggetto JSON piatto che rispecchia uno-a-uno quella struttura. Se la tua applicazione legge configurazioni raggruppate (per esempio DB_HOST e DB_PORT), le chiavi restano piatte nel JSON; puoi riorganizzarle nel codice in seguito. Se hai bisogno di vere strutture annidate, un formato come YAML in JSON è più adatto, e puoi formattare il risultato con il Formattatore JSON.
I dati del mio .env vengono inviati a un server?
No. Tutta l'analisi avviene interamente nel tuo browser con JavaScript. Il contenuto del tuo .env — che in genere contiene password di database, chiavi API, segreti OAuth e token di accesso — non viene mai trasmesso, mai memorizzato su alcun server e mai registrato. Puoi verificarlo aprendo la scheda Rete del browser e osservando che incollare il file non genera alcuna richiesta. È questo che rende sicuro convertire un .env di produzione reale, non solo un campione ripulito.

Strumenti correlati

Vedi tutti gli strumenti →