Conversão de configuração

ENV para JSONEscolha o significado de cada valor

Defina se os valores continuam como texto e se as chaves representam uma hierarquia de objetos.

ENV para JSON

Entrada

Resultado

O conteúdo fica neste navegador: não é enviado, executado, salvo nem incluído em uma URL.

Subconjunto estrito de dotenv 17.4.2. Valores entre aspas continuam strings; só números JSON, true, false e null sem aspas são inferidos. Comentários e aspas originais são descartados.

Entrada: 500.000 caracteres / 2 MB UTF-8; 10.000 atribuições, 50.000 nós, profundidade 100; token numérico de 1.000 caracteres, saída de 2 milhões.

Insira conteúdo ou execute a conversão.

ENV para JSON transforma atribuições de ambiente em dados que você pode conferir. Uma porta pode precisar continuar sendo texto; false entre aspas não deve virar booleano por surpresa. A escolha depende de como o aplicativo de destino lê a configuração.

Use dotenv para JSON para ler a sintaxe aceita ou JSON para ENV para gerar atribuições. Converter variáveis de ambiente não executa comandos, não expande referências e não adivinha os nomes esperados pelo aplicativo.

Por que usar ENV para JSON

Mudanças de tipo e estrutura feitas de propósito

O texto mantém sua identidade

ENV para JSON preserva os valores aceitos como strings por padrão, incluindo 001, false e uma atribuição vazia. Ative a inferência apenas se o destino espera tipos básicos. As aspas continuam protegendo o texto mesmo nesse modo.

Valores coloridos passam de atribuições para campos JSON entre aspas; uma ramificação transforma valores sem aspas em formas de tipos diferentes.

Defina as fronteiras dos objetos

Com a hierarquia ativa, DATABASE__HOST vira HOST dentro de DATABASE. Conflitos entre pai e folha e junções ambíguas de sublinhados interrompem a conversão, em vez de mudar silenciosamente o caminho de um valor.

Dois segmentos de chave se ramificam em uma árvore de objetos enquanto uma barreira vermelha interrompe um caminho em conflito.

Escolha as regras antes de exportar

Três decisões que vão além da aparência

01

Decida se os valores são texto

O padrão preserva strings. A inferência reconhece apenas números JSON sem aspas e true, false, null em minúsculas. 001, NaN, [] e números entre aspas continuam texto. JSON → ENV também exige folhas textuais no modo strings.

02

Ative a hierarquia conscientemente

No modo plano, DATABASE__HOST é um nome inteiro. O modo __ divide nomes em caminhos e recusa segmentos vazios, colisões, __ dentro de segmentos e fronteiras ambíguas. Arrays e objetos vazios aninhados também não são exportáveis.

03

Confira antes de inverter

Usar o resultado mostra o texto de substituição e a nova direção. Após aplicar, você pode desfazer uma vez a entrada, as opções e a saída. A conversão automática espera 350 ms; desativada, use Converter ou Ctrl/Cmd+Enter. Qualquer edição bloqueia a exportação antiga imediatamente.

Conversão sem coerção escondida

Confira o contrato dos dados em cada fronteira

Tokens numéricos exatos

Os números JSON inferidos mantêm dígitos e notação do expoente sem passar por binary64. O aplicativo de destino ainda pode arredondar os valores ou apresentar overflow ou underflow. As duas direções limitam cada token numérico a 1.000 caracteres.

Um subconjunto de aspas testado

Aspas simples, duplas e crases podem delimitar várias linhas. Só as duplas convertem barra invertida-n e barra invertida-r em LF e CR; as demais barras permanecem literais. A saída escolhe um delimitador ausente no valor.

Caminhos sensíveis a maiúsculas

Nomes ENV seguem [A-Za-z_][A-Za-z0-9_]* sem mudar a capitalização. Duplicatas, nomes inválidos e conflitos pai-folha interrompem toda a conversão. __proto__ é recusado para corresponder ao consumidor dotenv testado.

O mesmo texto em todas as saídas

O editor, a área de transferência e o arquivo UTF-8 baixado contêm o mesmo texto. Arquivos locais também passam pela prévia de substituição. Uma falha deixa a saída anterior desatualizada e impede uma configuração parcial de ser exportada.

Sintaxe aceita e limites

Ler configuração sem executar um aplicativo

Análise estrita, sem execução
As entradas aceitas são comparadas com dotenv 17.4.2 parse: atribuições com igual, export opcional, linhas vazias, comentários # e três delimitadores. Linhas malformadas não são ignoradas. Não há avaliação shell, dotenv-expand, substituição de comandos ou acesso ao ambiente do sistema; referências com dólar ficam literais.
Limites precisos das aspas
Não é possível inserir o mesmo delimitador usando barra invertida; escolha outro. Uma barra invertida imediatamente antes do fechamento também é recusada. Aspas duplas interpretam apenas barra invertida-n e barra invertida-r literais. CRLF e CR físicos na entrada ENV viram LF. Isso não garante compatibilidade com todos os shells ou dialetos dotenv.
Nem toda string pode ser escrita
A saída tenta aspas simples, crases, aspas duplas seguras e por fim uma forma sem aspas. Esta não pode conter #, CR/LF ou espaços nas pontas, nem começar por delimitador. CR exige aspas duplas seguras; uma barra invertida final exige a forma não citada segura. Combinações incompatíveis de aspas e escapes literais geram erro com o caminho, sem saída parcial.
Apenas objetos e folhas primitivas
JSON exige raiz objeto. O modo strings recusa números, booleanos e null; a inferência escreve esses tokens explicitamente. Texto entre aspas volta como texto. Arrays nunca viram strings. O modo plano recusa subobjetos; o aninhado recusa objetos vazios, __ em segmentos e caminhos que não se dividam exatamente. {} gera ENV vazio. Cada nome e segmento segue [A-Za-z_][A-Za-z0-9_]*; a capitalização fica, duplicatas e __proto__ são recusados.
A apresentação é normalizada
Comentários, export, delimitadores originais e espaços de formatação não ficam no JSON. Não há renomeação automática, inferência de índices de array, mesclagem, ZIP em lote, leitura de URL, links de compartilhamento ou histórico persistente. Um carregador ENV comum retorna strings mesmo para null ou true sem aspas; escolha os tipos conforme o destino.
Orçamento de processamento explícito
Entrada de até 500.000 caracteres UTF-16 e 2 MB UTF-8, 10.000 atribuições, 50.000 nós e profundidade 100. Um token numérico pode ter 1.000 caracteres e a saída 2 milhões. NUL e substitutos Unicode sem par são recusados. Erros de tamanho, sintaxe ou representação desativam toda exportação.

Dúvidas sobre ENV para JSON

Entenda valores e estruturas

Como interpretar valores ENV entre aspas?

ENV para JSON retira o delimitador externo aceito e mantém o conteúdo como string. Aspas duplas interpretam somente barra invertida-n e -r; simples e crases preservam essas sequências. Delimitadores iguais inseridos no valor e fechamentos ambíguos são recusados.

Os comentários e export continuam após a conversão?

Não entram no JSON. Um # sem aspas começa um comentário, mas dentro de um valor citado é conteúdo. export é apenas sintaxe, nunca execução. O retorno cria novas atribuições sem recuperar a apresentação original.

Por que números aparecem como texto no JSON?

Variáveis de ambiente são strings. Ative a inferência para promover números JSON válidos sem aspas, true, false e null. 001 e números entre aspas continuam texto. Tokens grandes mantêm seus dígitos dentro do limite.

Quais valores precisam de aspas no ENV?

A saída normalmente cita strings para proteger espaços, # e texto parecido com tipos primitivos. Ela escolhe um delimitador em vez de adicionar escapes JSON. Algumas combinações ou barras invertidas finais permitem uma forma não citada segura; caso contrário, há um erro de caminho.

Como representar uma estrutura JSON aninhada no ENV?

Com __, caminhos de objetos não vazios viram nomes: DATABASE.HOST passa a DATABASE__HOST sem mudar maiúsculas. Arrays, subobjetos vazios, nomes inválidos e fronteiras ambíguas são recusados. O modo plano não interpreta hierarquia.

Encontrou outro caso de aspas ENV?

Experimente ENV para JSON

Use ENV para JSON para definir a política de strings e os caminhos de objetos antes de mover ajustes entre arquivos de configuração.

Confira também as regras de tipos e aspas do carregador de destino.