Convertitore da .env a JSON
Converti il contenuto di un file .env in JSON con inferenza dei tipi, chiavi annidate e i commenti # legati alla variabile sottostante. Solo lato client.
Incolla un file .env e ottieni subito un oggetto JSON, senza che il contenuto esca dal browser. Di default DEBUG=true diventa un booleano vero e non la stringa "true", una chiave puntata come DB.HOST si apre in oggetti annidati e una riga # scritta subito sopra una variabile passa nel campo $comments di quella variabile. Ognuno di questi comportamenti si può disattivare.
Informazioni sul convertitore da .env a JSON
Un .env è testo NOME=valore pensato per le variabili d'ambiente di un processo: comodo da scrivere, scomodo quando il codice si aspetta una configurazione strutturata. Il parser accetta la sintassi che si incontra davvero nei progetti — commenti #, prefisso export, valori tra apici singoli o doppi, separatore = oppure : — e restituisce JSON da usare in un config loader, in una fixture di test o durante il debug. Tre interruttori governano il risultato: Deduci tipi converte in tipi JSON i valori che hanno l'aspetto di numeri o booleani, Chiavi puntate → annidate trasforma FEATURE.CACHE.TTL in { "FEATURE": { "CACHE": { "TTL": ... } } }, e Commenti decide se le righe # che documentavano il file restano o spariscono.
Potrebbe servirti anche
Come convertire .env in JSON
- 1
Incolla le variabili
Copia il .env nel pannello di input o premi la beuta per un esempio con un commento, un numero e un booleano. Le righe possono iniziare con export, usare = o : tra nome e valore e racchiudere il valore tra apici singoli o doppi.
- 2
Controlla i tre interruttori
Nelle Opzioni avanzate trovi Deduci tipi, Chiavi puntate → annidate (con il relativo separatore) e Commenti, da mantenere come campi $comments o ignorare. In partenza valgono le scelte più diffuse: tipi dedotti, chiavi annidate, commenti mantenuti.
- 3
Avvia l'analisi
Premi Converti e le righe NOME=valore vengono lette in ordine: l'export iniziale cade e il commento # dopo il valore viene rimosso, mentre un # tra virgolette o subito dopo l'uguale resta nel valore. Le virgolette esterne si tolgono: tra virgolette doppie \n e \" diventano un a capo e una virgoletta, il testo tra apici singoli resta identico e un valore tra virgolette può proseguire su più righe. Le righe # subito sopra una variabile si agganciano a essa; se poi cambi un'opzione, il risultato si aggiorna all'istante.
- 4
Porta via il JSON
Copialo con l'apposita icona o scaricalo come file .json. Per il percorso opposto, l'icona di inversione apre JSON a Env.
Riferimenti
- The Twelve-Factor App — Config
La metodologia ampiamente citata che ha reso popolare la memorizzazione della configurazione nelle variabili d'ambiente, la convenzione su cui si basano i file .env.
- dotenv (motdotla) — README
L'implementazione di riferimento e la specifica di fatto per la sintassi dei file .env: righe KEY=VALUE, commenti # e valori tra virgolette.
- RFC 8259 — The JSON Data Interchange Format
La specifica IETF per il formato JSON prodotto da questo strumento.
Strumenti per sviluppatori correlati
JSON a Env
Converti un oggetto JSON di nuovo in formato .env KEY=VALUE, con appiattimento delle chiavi con punti e reinserimento dei commenti.
Properties a JSON
Converti un file .properties Java in JSON, conservando i commenti di ogni chiave in una mappa $comments.
Formattatore JSON
Incolla JSON grezzo e ottieni subito una vista formattata, con evidenziazione della sintassi e validazione.
YAML a JSON
Converti file di configurazione YAML in JSON e viceversa, un'altra coppia di formati di configurazione comuni.
FAQ su Env a JSON
- DEBUG=true diventa un booleano?
- Sì, con Deduci tipi attivo (impostazione predefinita): solo true e false scritti esattamente così diventano booleani JSON, e i numeri decimali semplici come 5432 diventano numeri. I valori che cambierebbero al ritorno, come 007 o 1.0, restano stringhe. Spegni Deduci tipi per avere solo testo.
- Che succede al prefisso export e alle virgolette?
- L'export iniziale viene scartato e dal valore si rimuove una sola coppia di virgolette esterne, singole o doppie; quelle interne restano dove sono.
- Perché compare un errore di conflitto tra chiavi?
- Se il file definisce APP=1 e anche APP.PORT=80 con l'annidamento attivo, APP dovrebbe essere insieme un valore e un oggetto: il convertitore si ferma con un errore di conflitto invece di scartarne uno in silenzio. Disattiva l'annidamento per tenerle entrambe come chiavi piatte.
- Come ottengo oggetti annidati da APP.CACHE.TTL?
- Lascia attivo «Chiavi puntate → annidate» (separatore predefinito "."): APP.CACHE.TTL=60 diventa { "APP": { "CACHE": { "TTL": 60 } } }. Con l'opzione spenta la chiave puntata resta un unico campo piatto.
- Che fine fanno le righe di commento?
- Quelle scritte subito sopra una variabile finiscono nel campo $comments, associate a quella variabile. Un titolo di sezione seguito da una riga vuota non appartiene a nessuna variabile e quindi non compare nel JSON; nemmeno le righe vuote vengono registrate. Con Commenti su «Ignora» vengono scartate tutte.
- Il file .env viene caricato su un server?
- No, l'analisi avviene tutta nel browser e il contenuto non viaggia in rete: importante, visto che un .env custodisce spesso chiavi API e credenziali del database.
- Meglio .env o JSON per la configurazione?
- Servono a cose diverse: il .env è un elenco piatto di coppie per le variabili d'ambiente del processo (vedi le indicazioni sulla configurazione di The Twelve-Factor App), JSON ammette strutture annidate e tipi nativi. Convertire serve a ispezionare o confrontare i valori come dati strutturati, o a passarli a strumenti che accettano solo JSON.