Conversor de JSON para Variáveis de Ambiente .env (Aplanar e Exportar)

Conversor de JSON para Variáveis de Ambiente .env (Aplanar e Exportar)

Aplana estruturas JSON aninhadas em variáveis .env em SNAKE_CASE maiúsculo com delimitadores e opções de prefixo personalizáveis.

Predefinições:
Opções de nivelamento e formatação
Fonte JSON Aninhada
JSON
# ==============================================================================
# Generated by ToolsAA JSON to .env Converter (100% Client-Side Pure)
# ==============================================================================

# ── SERVICE ─────────────────────────────────────────────────────────────
SERVICE_NAME=payment-gateway
SERVICE_VERSION=2.4.0
SERVICE_ENVIRONMENT=production
SERVICE_PORT=8080
SERVICE_CORS_ORIGINS_0=https://toolsaa.com
SERVICE_CORS_ORIGINS_1=https://api.toolsaa.com

# ── DATABASE ─────────────────────────────────────────────────────────────
DATABASE_POSTGRES_HOST=db.internal.aws.toolsaa.net
DATABASE_POSTGRES_PORT=5432
DATABASE_POSTGRES_DATABASE=production_billing
DATABASE_POSTGRES_USER=billing_svc
DATABASE_POSTGRES_PASSWORD=Secr3t_Billing_Db_Pass!9988
DATABASE_POSTGRES_POOL_MAX=20
DATABASE_POSTGRES_POOL_IDLE_TIMEOUT_MILLIS=30000
DATABASE_POSTGRES_SSL=true

# ── REDIS ─────────────────────────────────────────────────────────────
REDIS_CLUSTER_HOST=redis-cluster.toolsaa.internal
REDIS_CLUSTER_PORT=6379
REDIS_CLUSTER_PASSWORD=SuperClusterAuthKey_9090
REDIS_CLUSTER_TTL_SECONDS=3600

# ── SECURITY ─────────────────────────────────────────────────────────────
SECURITY_JWT_SECRET=f3b890a2c4189e87519cd934bf2a09887711223344
SECURITY_JWT_EXPIRES_IN=2h
SECURITY_JWT_ISSUER=toolsaa-auth-service
SECURITY_API_KEY=ak_live_toolsaa_992288334455

# ── AWS ─────────────────────────────────────────────────────────────
AWS_REGION=us-east-1
AWS_S3_BUCKET=toolsaa-billing-receipts-prod
AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE
AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Variáveis GeradasDelimitador: "_"
26

Chaves ativas transformadas em maiúsculas UPPER_SNAKE.

Chaves SensíveisMasking OFF
7

Credenciais verificadas por sentinela de padrões de senha/token.

Profundidade MáximaArray: INDEXED
4

Níveis hierárquicos percorridos e nivelados com sucesso.

Processamento 100% Local no Navegador

Todas as cargas JSON e segredos de ambiente são processados na memória do navegador via AST puro, sem envio a servidores.

Transformação Inteligente para SNAKE_CASE

Árvores de objetos profundamente aninhadas são aplanadas em variáveis SNAKE_CASE em maiúsculas com delimitadores configuráveis.

Pronto para Implantações DevOps

Exporte diretamente para .env padrão, Docker Compose, manifestos do Kubernetes ConfigMap/Secret, Terraform .tfvars e definições TypeScript.

Referência técnica e guia de arquitetura

Guia do Desenvolvedor: Conversor de JSON para Variáveis de Ambiente .env (Aplanar e Exportar) — Guia de referência

Aplana estruturas JSON aninhadas em variáveis .env em SNAKE_CASE maiúsculo com delimitadores e opções de prefixo personalizáveis.

Parâmetros principais e controles

Delimitador de ChavesEnum (Sublinhado simples _ | Sublinhado duplo __ | Ponto . | Dois pontos :)

Caractere utilizado para concatenar chaves pai e filho durante o nivelamento da hierarquia. O sublinhado duplo (__) é padrão no ASP.NET Core e Spring Boot.

Padrão: Sublinhado simples (_)
Formato das ChavesEnum (UPPER_SNAKE_CASE | lower_snake_case | camelCase | PRESERVE)

Convenção de nomenclatura aplicada às variáveis geradas. O padrão POSIX exige chaves em maiúsculas SNAKE_CASE (UPPER_SNAKE_CASE).

Padrão: UPPER_SNAKE_CASE
Prefixo Pré-definidoEnum (Nenhum | NEXT_PUBLIC_ | VITE_ | REACT_APP_ | Personalizado)

Prefixo opcional adicionado às chaves para disponibilização em empacotadores de frontend como Next.js ou Vite.

Padrão: Nenhum
Estratégia de ArraysEnum (Indexado _0 | Separado por vírgulas | String JSON serializada)

Define como arrays JSON são transformados: sufixos numéricos (ex: HOSTS_0, HOSTS_1), listas separadas por vírgula ou JSON serializado.

Padrão: Indexado (_0)
Aspas nos ValoresEnum (Inteligente / Auto | Sempre aspas duplas | Aspas simples | Sem aspas)

Regras de delimitação de valores. O modo inteligente envolve automaticamente valores com espaços, cerquilha (#), quebras de linha ou aspas em aspas duplas com escape adequado.

Padrão: Inteligente / Auto
Mascarar Valores SensíveisBoolean

Substitui valores de chaves sensíveis (password, secret, token, key, private) por asteriscos (********) para capturas de tela e documentações seguras.

Padrão: false

Dicas profissionais e melhores práticas

Utilize o delimitador de sublinhado

Utilize o delimitador de sublinhado duplo (__) para gerar variáveis para ASP.NET Core ou Spring Boot. Os leitores de configuração desses frameworks mapeiam automaticamente APP__DATABASE__PORT para app.database.port ou App:Database:Port.

Em pipelines de CI/CD

Em pipelines de CI/CD (GitHub Actions, GitLab CI), utilize sempre aspas inteligentes para evitar que o interpretador de shell expanda caracteres como cifrão ($) ou e comercial (&) contidos em credenciais.

Adicione prefixos como NEXT_PUBLIC_ ou

Adicione prefixos como NEXT_PUBLIC_ ou VITE_ apenas a variáveis que realmente precisam estar acessíveis no navegador. Jamais adicione esses prefixos a senhas de banco ou chaves privadas de API.

Exporte a interface NodeJS.ProcessEnv

Exporte a interface NodeJS.ProcessEnv na aba 'Tipos TypeScript' para obter autocompletar e validação em tempo de compilação no seu editor de código, eliminando erros de digitação em variáveis de ambiente.

Problemas comuns e solução de problemas

Valores contendo '#' são truncados ou interpretados como comentários em bibliotecas dotenv

Valores sem aspas que contêm '#' são interpretados como comentários em linha em muitos analisadores dotenv. Ative 'Inteligente / Auto' ou 'Sempre aspas duplas' (ex: DB_PASS="p#ssw0rd") para preservar o caractere.

Chaves privadas RSA ou certificados multilinhas causam erro de sintaxe no arquivo .env

Arquivos .env requerem valores em linha única. O conversor transforma quebras de linha internas em sequências '\n' escapadas dentro de aspas duplas (ex: PRIVATE_KEY="-----BEGIN...\n...END-----"). Sua aplicação deve desescapar '\n' ao inicializar.

Arrays simples geram uma quantidade excessiva de chaves numéricas difíceis de manter

Caso seu sistema precise apenas de uma lista de domínios ou URLs permitidas, altere o tratamento de arrays para 'Separado por vírgulas', gerando ALLOWED_HOSTS="a.com,b.com" de fácil leitura.

Perguntas frequentes (FAQ)

Como o conversor transforma árvores JSON aninhadas em variáveis de ambiente planas?▼

O conversor percorre a árvore sintática do JSON recursivamente, unindo os nomes das propriedades com o delimitador escolhido (padrão '_') e convertendo o resultado em UPPER_SNAKE_CASE (ex: {"database": {"primary": {"host": "localhost"}}} resulta em DATABASE_PRIMARY_HOST=localhost).

Quais formatos de exportação são suportados além do arquivo .env padrão?▼

Além do formato .env padrão, a ferramenta gera scripts de exportação Shell (export KEY="val"), blocos environment do Docker Compose, manifestos YAML para Kubernetes ConfigMap/Secret, arquivos Terraform .tfvars, tipos TypeScript e JSON aplanado.

Meus dados confidenciais ou chaves de API são enviados para servidores externos?▼

Não. Todo o processamento e formatação ocorrem 100% no navegador do usuário, usando a engine JavaScript local. Nenhuma informação ou segredo transita pela rede.

Como valores booleanos e nulos do JSON são processados?▼

Valores booleanos do JSON são convertidos para texto em minúsculas ('true' e 'false'). Valores nulos são convertidos para strings vazias (KEY=), prevenindo exceções durante a leitura das variáveis de ambiente na aplicação.

É possível converter os arquivos .env de volta para o JSON estruturado original?▼

Sim. O ToolsAA disponibiliza conversores bidirecionais que realizam a operação inversa, reconstruindo a árvore JSON original a partir dos delimitadores (_ ou __).

Ferramentas e utilitários relacionados

Todas as ferramentas →