Skip to content

Conversor de JSON para .env

Cole um objeto JSON e obtenha um arquivo .env na hora. Gere dotenv localmente — suas chaves e segredos nunca saem do navegador. 100% privado, sem upload.

Sem rastreamento Roda no navegador Grátis
Opções · manter chaves · sem export
0 caracteres
.env Saída
0 linhas
Revisado quanto ao tratamento de entrada apenas de objetos, às aspas seguras na ida e volta, ao achatamento de valores aninhados e à normalização de chaves — Go Tools Engineering Team · Jun 12, 2026

O que é um arquivo .env?

Um arquivo .env (arquivo dotenv) é uma lista em texto puro de pares KEY=VALUE que guarda configuração de ambiente e segredos fora do seu código-fonte. É o padrão de fato para Node.js, Vite, Next.js, Python, Ruby e Docker Compose — a biblioteca dotenv carrega o arquivo e injeta cada par no ambiente do processo. Como costuma armazenar senhas de banco de dados, chaves de API e tokens de acesso, um arquivo .env é tratado como sensível e mantido fora do controle de versão.

Gerar um arquivo .env a partir de JSON é o inverso da tarefa comum de analisar configuração: você já tem a configuração como um objeto JSON — de uma resposta de API, de uma exportação de configuração, de um dump de gerenciador de segredos ou de um script que monta as definições programaticamente — e precisa de um arquivo .env para colocar em um projeto ou entregar a um contêiner. Este conversor percorre as chaves de nível superior do seu objeto JSON e escreve uma linha KEY=VALUE corretamente entre aspas por propriedade.

Esta ferramenta é construída em torno de algumas decisões deliberadas:

**1. Aspas seguras na ida e volta.** Números e booleanos são escritos sem aspas, null vira um valor vazio, e qualquer string que contenha um espaço, quebra de linha, # ou aspa é automaticamente envolvida em aspas duplas e escapada. O resultado é analisado de volta de forma limpa pelo dotenv e pelo Conversor de .env para JSON que o acompanha, então um valor nunca muda de significado na ida e volta.

**2. Tratamento honesto do aninhamento.** Um arquivo .env é plano por definição. Em vez de descartar silenciosamente dados aninhados, a ferramenta serializa cada objeto ou array aninhado em uma string JSON compacta e avisa quais chaves foram achatadas, para que você decida se o .env é realmente o destino certo.

**3. Normalização opcional de chaves.** As chaves são mantidas literalmente por padrão para evitar perda de informação. Ative Normalizar chaves para converter camelCase ou kebab-case na convenção UPPER_SNAKE_CASE que as variáveis de ambiente usam, com um aviso para qualquer chave que ainda não consiga formar um nome válido.

**4. Privacidade 100% no navegador.** O JSON que você cola — geralmente as próprias credenciais que você está prestes a escrever em um .env — nunca sai do navegador. Sem upload, sem ida e volta ao servidor, sem log; verifique zero requisições de rede na aba Rede do DevTools.

Antes de converter, você pode validar ou formatar o JSON com o Formatador JSON, ou desfazer o escape de uma string JSON com o Escape JSON. Se sua configuração for melhor expressa com estrutura, o JSON para YAML preserva um aninhamento que um .env plano não consegue.

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

Recursos principais

Aspas seguras na ida e volta

Números e booleanos são escritos sem aspas, null vira um valor vazio, e strings com espaços, quebras de linha, # ou aspas são automaticamente envolvidas em aspas duplas e escapadas para que sejam analisadas de volta de forma limpa pelo dotenv.

Tratamento honesto do aninhamento

Objetos e arrays aninhados não podem existir em um .env plano, então cada um é serializado em uma string JSON compacta e um aviso lista exatamente quais chaves foram achatadas — nunca uma mudança silenciosa.

Normalização opcional de chaves

Mantenha as chaves literalmente por padrão — com um aviso para qualquer chave que não seja um nome de env válido — ou ative Normalizar chaves para converter camelCase e kebab-case na convenção UPPER_SNAKE_CASE que as variáveis de ambiente usam.

Prefixo export opcional

Antepõe export a cada linha para que o arquivo .env gerado possa ser carregado diretamente via source em um shell, combinando com o estilo de scripts de CI e deploy.

Conversão ao vivo

A saída .env é atualizada na hora conforme você digita ou cola JSON. Entradas grandes (acima de 200KB) mudam para o modo manual, com um botão Converter para manter o navegador responsivo.

Privacidade 100% no navegador

Toda a conversão roda localmente no seu navegador. O JSON que você cola — chaves de API, credenciais, tokens — nunca é enviado, nunca é registrado em log e nunca é armazenado em nenhum servidor.

Exemplos

Objeto de configuração para .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

Um objeto de configuração JSON plano vira um arquivo .env limpo. Números e booleanos são escritos sem aspas; strings simples são escritas como estão. Pronto para salvar como .env e carregar com o dotenv.

Valores que precisam de aspas

{
  "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 que contêm espaços, quebras de linha, # ou aspas são automaticamente envolvidas em aspas duplas e escapadas para que sobrevivam a uma ida e volta pelo dotenv. Um valor null vira uma atribuição vazia (KEY=).

Normalizar chaves para UPPER_SNAKE_CASE

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

Com a opção Normalizar chaves ativada, chaves em camelCase e kebab-case são convertidas para a convenção UPPER_SNAKE_CASE que as variáveis de ambiente usam. Com ela desativada, as chaves originais são mantidas literalmente.

Objeto aninhado achatado em uma string 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\"]"

Arquivos .env são planos, então objetos e arrays aninhados não podem ser representados nativamente. A ferramenta serializa cada valor aninhado em uma string JSON compacta e a envolve em aspas duplas, e mostra um aviso listando quais chaves foram achatadas, para que o comportamento nunca seja silencioso.

Como usar

  1. 1

    Cole seu objeto JSON

    Digite ou cole um objeto JSON plano no campo de entrada acima. Você também pode clicar em 'Carregar exemplo' para experimentar um objeto de configuração, valores que precisam de aspas ou um objeto aninhado.

  2. 2

    Veja a saída .env ao vivo

    O arquivo .env aparece na hora no painel de saída. Alterne 'Normalizar chaves' para nomes em UPPER_SNAKE_CASE, ou 'Adicionar prefixo export' se o arquivo for carregado via source em um shell.

  3. 3

    Copie ou baixe

    Clique em Copiar para pegar o .env na área de transferência, ou em Baixar para salvá-lo como um arquivo .env — pronto para colocar no seu projeto e carregar com o dotenv.

Armadilhas comuns do JSON

Array ou escalar de nível superior

Um arquivo .env é um conjunto plano de variáveis nomeadas, então a entrada precisa ser um objeto JSON. Um array de nível superior ou um valor simples como uma string ou número não tem nomes de chave para mapear em variáveis, e a ferramenta reporta um erro. Envolva seus dados em um objeto com chaves descritivas primeiro.

✗ Incorreto
["a", "b", "c"]
✓ Correto
{"ITEMS": "a,b,c"}

Sintaxe JSON inválida

A entrada precisa ser JSON válido. Vírgulas finais, aspas simples e chaves sem aspas são erros comuns copiados do JavaScript e causam um erro de análise com linha e coluna. Use aspas duplas para todas as chaves e valores string e remova quaisquer vírgulas finais.

✗ Incorreto
{'PORT': 8080,}
✓ Correto
{"PORT": 8080}

Esperar estrutura aninhada no .env

Objetos e arrays aninhados não podem ser representados nativamente em um arquivo .env plano. A ferramenta os serializa em strings JSON e avisa você, mas o valor vira uma única string opaca. Se você precisa preservar a estrutura, converta para YAML em vez de .env.

✗ Incorreto
{"DB": {"host": "localhost", "port": 5432}}
✓ Correto
{"DB_HOST": "localhost", "DB_PORT": 5432}

Chaves que não são nomes de variáveis válidos

A maioria dos shells e carregadores só aceita nomes de variáveis que correspondem a [A-Za-z_][A-Za-z0-9_]* — uma chave que começa com um dígito ou contém espaços ou traços é inválida. Com as chaves mantidas literalmente, a ferramenta avisa você sobre tais chaves; Normalizar chaves corrige maiúsculas/minúsculas e traços, mas não consegue resgatar um nome que começa com um dígito, então renomeie essas chaves no seu JSON.

✗ Incorreto
{"2fa-enabled": true}
✓ Correto
{"TWO_FA_ENABLED": true}

Strings sem aspas que precisam de aspas

Se você escrever o JSON à mão, lembre-se de que um valor com espaços ou um # ainda precisa ser uma string JSON válida (entre aspas duplas). A ferramenta então o reescreve entre aspas para o .env automaticamente. O erro é esquecer as aspas JSON no lado da entrada, o que produz JSON inválido.

✗ Incorreto
{"MSG": Hello World}
✓ Correto
{"MSG": "Hello World"}

Casos de uso comuns

Gerar .env a partir de uma exportação de configuração
Pegue uma exportação de configuração JSON de uma API, de um painel de configurações ou de um gerenciador de segredos e transforme-a em um arquivo .env pronto para uso em desenvolvimento local ou em um contêiner.
Montar modelos de .env
Construa um objeto JSON descrevendo as variáveis que um novo serviço precisa, converta-o em um .env e confirme um .env.example para que os colegas saibam exatamente quais chaves preencher.
Conectar ferramentas configuradas em JSON ao dotenv
Algumas ferramentas emitem configuração como JSON enquanto seu runtime espera um .env. Converta a saída JSON para o formato dotenv para que as duas metades do pipeline concordem com as mesmas variáveis.
Produzir arquivos env de shell carregáveis via source
Ative o prefixo export para gerar um arquivo que você pode carregar diretamente via source em um shell ou etapa de CI, transformando um blob de configuração JSON em variáveis de ambiente exportadas em uma única colagem.
Configuração de ida e volta
Combine isto com o Conversor de .env para JSON para editar a configuração como JSON estruturado e gravá-la de volta no .env — as aspas seguras na ida e volta garantem que os valores sobrevivam nas duas direções.
Normalizar chaves de maiúsculas/minúsculas mistas
Converta um objeto JSON com chaves em camelCase ou kebab-case em um .env com nomes de variáveis consistentes em UPPER_SNAKE_CASE usando a opção Normalizar chaves, combinando com as convenções de variáveis de ambiente.

Detalhes técnicos

Entrada apenas de objetos com serialização tipada
A entrada é analisada com o JSON.parse() nativo do navegador e precisa ser um objeto de nível superior; arrays e escalares são rejeitados com um erro claro. Cada propriedade de nível superior é serializada por tipo: números e booleanos são escritos sem aspas, null vira um valor vazio (KEY=), e strings são escritas diretamente a menos que contenham um espaço, quebra de linha, # ou aspa, caso em que são envolvidas em aspas duplas e escapadas para segurança na ida e volta.
Valores aninhados e normalização de chaves
Objetos e arrays aninhados são serializados com um JSON.stringify compacto, envolvidos em aspas duplas e escapados, com um aviso nomeando as chaves achatadas. A etapa opcional Normalizar chaves converte as chaves para UPPER_SNAKE_CASE, resolvendo a maioria dos nomes inválidos; quando as chaves são mantidas literalmente, qualquer chave que não corresponda a [A-Za-z_][A-Za-z0-9_]* dispara um aviso de nome inválido. Um prefixo export opcional pode ser adicionado a cada linha.
Baseado no navegador — sem upload, sem servidor
Todo o processamento acontece inteiramente no motor JavaScript do seu navegador; nenhum dado JSON é transmitido pela rede em momento algum. O serializador é escrito internamente, sem dependências externas, já que a biblioteca Node dotenv não é segura no navegador. Entradas maiores que 200KB mudam do modo ao vivo para o modo manual (um clique explícito em Converter) para manter o navegador responsivo.

Boas práticas

Mantenha as chaves literais a menos que precise das convenções de env
Deixe Normalizar chaves desativado quando a aplicação consumidora já espera os nomes de chave exatos do seu JSON, para que nada seja renomeado inesperadamente. Ative-o apenas quando você quiser especificamente a convenção UPPER_SNAKE_CASE que as variáveis de ambiente usam por convenção.
Achate o aninhamento intencionalmente, não por acidente
Um valor aninhado vira uma string JSON opaca no .env, que a maioria das aplicações não consegue analisar de volta automaticamente. Quando você vir o aviso de achatamento, prefira remodelar o JSON em chaves planas e prefixadas (DB_HOST, DB_PORT) antes de converter, ou escolha um formato estruturado como YAML.
Confie nas aspas automáticas para idas e voltas
Deixe a ferramenta decidir quando colocar aspas — ela envolve em aspas duplas e escapa apenas os valores que precisam. Isso mantém o .env legível enquanto garante que valores com espaços, quebras de linha ou # sobrevivam inalterados a uma ida e volta de volta pelo Conversor de .env para JSON.
Gere segredos apenas em uma ferramenta exclusiva do navegador
O JSON que você converte aqui é efetivamente um conjunto de credenciais. Só gere um .env em uma ferramenta que roda inteiramente no navegador; verifique zero requisições de rede no DevTools. Este conversor se qualifica, ao contrário de geradores do lado do servidor ou baseados em API.
Valide a entrada JSON primeiro
Se o JSON é escrito à mão ou montado por um script, valide-o com o Formatador JSON primeiro para pegar vírgulas finais ou chaves sem aspas, para que você obtenha um .env limpo em vez de um erro de análise confuso.

Perguntas frequentes

Como converter JSON para um arquivo .env online?
Cole um objeto JSON no campo de entrada acima. A ferramenta gera um arquivo .env na hora, no seu navegador — sem precisar clicar em nenhum botão. Cada propriedade de nível superior vira uma linha KEY=VALUE. Você pode opcionalmente normalizar as chaves para UPPER_SNAKE_CASE ou adicionar um prefixo export no painel de Opções, e depois clicar em Copiar para pegar o resultado ou em Baixar para salvá-lo como um arquivo .env. Tudo roda localmente, então seus segredos nunca saem do seu dispositivo.
Que tipo de JSON isto aceita?
A entrada precisa ser um objeto JSON (um conjunto de pares chave/valor no nível superior), porque um arquivo .env é fundamentalmente uma lista plana de variáveis. Um array de nível superior ou um escalar simples como uma string ou número não pode ser mapeado para variáveis de ambiente, então a ferramenta reporta um erro pedindo um objeto. JSON inválido também produz um erro com números de linha e coluna aproximados, para que você localize o problema rapidamente.
Como strings, números, booleanos e null são escritos?
Números e booleanos são escritos sem aspas (PORT=8080, DEBUG=true). Um valor null vira uma atribuição vazia (KEY=), que o dotenv carrega como uma string vazia. Strings simples são escritas como estão, mas uma string que contém espaços, uma quebra de linha, um # ou uma aspa é automaticamente envolvida em aspas duplas e escapada para que seja analisada de volta corretamente. Isso significa que a saída faz a ida e volta de forma limpa pelo analisador dotenv e pelo nosso Conversor de .env para JSON que o acompanha.
O que acontece com objetos e arrays aninhados?
Arquivos .env não podem representar aninhamento — toda variável é uma string plana. Quando um valor é um objeto ou array aninhado, a ferramenta o serializa em uma string JSON compacta com JSON.stringify, a envolve em aspas duplas e a escapa. Um aviso não bloqueante lista exatamente quais chaves foram achatadas dessa forma, então você sempre sabe que a estrutura foi colapsada. Se seus dados são profundamente aninhados, um formato como JSON para YAML preserva a hierarquia muito melhor do que o .env consegue.
O que a opção Normalizar chaves faz?
Por padrão, as chaves JSON originais são mantidas exatamente como escritas, então nenhum dado é perdido — e nesse modo qualquer chave que ainda não seja um nome válido de variável de ambiente (a maioria dos shells e carregadores só aceita nomes que correspondem a [A-Za-z_][A-Za-z0-9_]*) é sinalizada com um aviso para que você possa renomeá-la. Com Normalizar chaves ativado, as chaves são convertidas para UPPER_SNAKE_CASE — o estilo convencional para variáveis de ambiente (databaseUrl vira DATABASE_URL, enable-signup vira ENABLE_SIGNUP) — o que resolve a maioria dos nomes inválidos automaticamente.
Meus dados JSON são enviados a um servidor?
Não. Toda a conversão acontece inteiramente no seu navegador com JavaScript. O JSON que você cola — que muitas vezes contém chaves de API, credenciais de banco de dados e tokens que você está prestes a escrever em um arquivo .env — nunca é transmitido, nunca é armazenado em nenhum servidor e nunca é registrado em log. Você pode confirmar isso abrindo a aba Rede do navegador e observando que colar dispara zero requisições. É isso que torna seguro gerar um .env de produção real, e não apenas um exemplo.

Ferramentas relacionadas

Ver todas as ferramentas →