Conversor de JSON para Env

Converta um objeto JSON para o formato .env CHAVE=VALOR, com achatamento de objetos aninhados e reinserção de comentários. Roda só no navegador.

Transforme um objeto JSON em linhas NOME=valor que o dotenv e carregadores parecidos leem quando a aplicação sobe. Objetos aninhados viram nomes com ponto, como db.host; um array fica numa única linha com o próprio texto JSON; true, false e números saem como texto puro. Se o JSON trouxer o mapa $comments criado pelo Env to JSON, cada entrada volta a ser uma linha # em cima da variável. Tudo roda no navegador, então os segredos do seu JSON não saem da sua máquina.

JSON Entrada

Carregar

Opções avançadasConverterLimpar

.env Saída

O resultado aparecerá aqui...

CopiarBaixar

O resultado aparecerá aqui...

Sobre o Conversor de JSON para Env

Variável de ambiente só guarda string plana, então gerar um .env a partir de JSON é, no fundo, decidir como nomear cada valor. Com o achatamento ligado, o caminho de cada chave aninhada é unido pelo separador: { "app": { "cache": { "ttl": 60 } } } resulta em app.cache.ttl=60, e maiúsculas e minúsculas ficam exatamente como foram escritas no JSON — nada é passado para caixa alta. O shell não aceita ponto no nome de uma variável; por isso, se um script for carregar o arquivo com source, troque o separador por underscore (app_cache_ttl). Com o achatamento desligado, o objeto aninhado não é expandido: ele aparece inteiro, como uma linha de texto JSON depois do sinal de igual.

Talvez você também precise

Env para JSON

Converta arquivos .env para JSON com inferência de tipos e chaves aninhadas.

Abrir ferramenta

JSON para Properties

Converta objetos JSON para o formato .properties do Java com achatamento de chaves com pontos.

Abrir ferramenta

Formatador e Validador JSON

Formate, valide e visualize dados JSON.

Abrir ferramenta

YAML para JSON

Converter YAML para JSON ou JSON para YAML.

Abrir ferramenta

Como converter JSON para .env

  1. 1

    Insira um objeto JSON

    Cole no painel de entrada um objeto — não um array nem um valor solto — ou clique no ícone do frasco para carregar um exemplo pequeno e plano, com uma chave de API e uma porta.

  2. 2

    Decida como os nomes serão montados

    Nas opções avançadas: deixe o ponto se quem lê o arquivo é o dotenv (db.host), use underscore para nomes que o shell aceita (db_host) ou desative o achatamento para manter cada objeto aninhado como uma linha JSON.

  3. 3

    Gere as variáveis

    Ao clicar em Converter, cada valor-folha vira uma linha NOME=valor, na mesma ordem das chaves do JSON, e as entradas de $comments aparecem como linhas # logo acima da variável que descrevem. Valores com quebra de linha, espaços no início ou no fim ou um # vão entre aspas (a quebra de linha vira \n), para voltarem idênticos quando convertidos de novo para JSON.

  4. 4

    Guarde o .env fora do Git

    Copie o texto ou baixe o arquivo .env; se ele contiver credenciais, deixe-o fora do controle de versão. O ícone de inverter direção leva o conteúdo de volta para JSON.

Referências

Ferramentas para desenvolvedores relacionadas

Perguntas frequentes sobre JSON to Env

Os nomes das variáveis são convertidos para maiúsculas?
Não. A ferramenta respeita a caixa das chaves do JSON: { "db": { "host": "x" } } gera db.host=x. No Linux e no macOS, nomes de variáveis de ambiente diferenciam maiúsculas de minúsculas, então escreva as chaves no JSON do jeito que a sua aplicação vai procurá-las.
Um script de shell consegue dar source no .env gerado?
Só se todos os nomes forem identificadores válidos de shell: letras, dígitos e underscore, sem começar por dígito. Um nome com ponto como db.host carrega sem problema no dotenv do Node.js, mas o shell não o reconhece como atribuição. Para arquivos que serão usados com source, escolha o underscore como separador.
O que acontece com arrays e objetos aninhados?
Com o achatamento ativo, cada objeto aninhado se desdobra em variáveis separadas por ponto, enquanto um array é gravado como uma linha só de JSON, por exemplo tags=["a","b"]. Com o achatamento desativado, os objetos aninhados também ficam inteiros, em forma de texto JSON.
E os valores true, false e numéricos?
Arquivo .env não tem tipos, então eles são escritos como texto: true, false ou o próprio número. No caminho de volta, o Env to JSON reconstrói booleanos e números de verdade quando Inferir tipos está ligado.
Para que serve o objeto $comments no JSON?
É onde o Env to JSON guarda os comentários do arquivo original. Ao gerar o .env, cada entrada vira uma linha # posicionada acima da variável correspondente. Escolha Ignorar no campo Comentários das opções avançadas se quiser apenas as linhas NOME=valor.
Minhas chaves de API passam por algum servidor?
Não. A conversão acontece localmente no navegador — detalhe que pesa, já que um .env normalmente guarda chaves de API e senhas de banco de dados.
Por que aparece um erro de nome de variável inválido?
Um nome vazio ou com espaços, =, :, #, aspas ou barra invertida não pode ser lido de volta de um arquivo .env, então a conversão para e mostra essa chave em vez de gravar uma linha quebrada. Renomeie a chave no JSON ou escolha outro separador, se foi ele que introduziu o caractere.