Uma alternativa ao dotenv que para de vazar o seu .env.
O dotenv não foi feito pra três pessoas dividindo uma DATABASE_URL no Slack. O Envshed é a troca criptografada e pensada para time: um .envshed.json na raiz do repo, valores puxados sob demanda e trilha de auditoria em cada leitura.
O dotenv é aquele arquivo que todo mundo usa e ninguém admite que gerencia por DM no Slack. Duas pessoas entram no time. Alguém esquece de colar a nova RESEND_API_KEY. A CI quebra às 2 da manhã. Você está aqui porque isso já aconteceu. É assim que uma alternativa séria ao dotenv se parece depois que você passou do projeto solo.
Onde o dotenv para de escalar
O .env é a fonte da verdade, e ninguém confia nele
Cinco cópias, todas um pouco diferentes. Staging tem uma chave a mais. Prod está faltando uma. Alguém comitou o arquivo no git em 2023 e o histórico ainda está lá.
Dev novo passa dias esperando o ambiente local funcionar
Pair call, compartilhamento de tela, DM com valor de secret. Onboarding não pode ser reconstruir um JSON na mão, linha por linha.
Você não faz ideia de quem leu o quê, nem quando
Uma chave rotaciona. Você não tem como saber quem ainda está com a antiga. Cada process.env é invisível.
O que o Envshed entrega que o dotenv não entrega
O Envshed mantém o formato que você já entende — arquivos com pares CHAVE=valor — e adiciona as três coisas que o dotenv nunca fez. Armazenamento central, criptografado em repouso com AES-256-GCM, então os valores nunca ficam em texto plano no disco. Acesso por usuário e por projeto, não "todo mundo no canal do Slack". E uma CLI que puxa os valores atuais sob demanda, então o arquivo no seu notebook é sempre o certo.
O mesmo fluxo, reconstruído
Descarta o arquivo. Mantém o fluxo.
# antes: caçar o último .env no Slack cat .env # depois: puxar os valores reais do seu ambiente envshed pull envshed run -- pnpm dev
Cada dor do dotenv, resolvida
Uma fonte da verdade por ambiente
Development, staging, production — cada um tem um cofre. envshed pull --env staging é a única forma de ter os valores de staging no disco.
Acesso imediato quando alguém entra
Convide a pessoa para a org. Ela roda envshed init && envshed pull e está produtiva em 30 segundos.
Toda leitura fica registrada
A trilha de auditoria mostra qual usuário puxou qual secret, de qual máquina, em qual horário. Rotação vira operação conhecida, não incidente.
O que você ganha
- Criptografia AES-256-GCM em repouso para todo valor de secret
- Um .envshed.json detecta cada pacote do monorepo
- Service tokens para CI sem compartilhar credenciais humanas
- Overrides por usuário — seus valores locais continuam locais
- US$ 5 por usuário por mês, fixo — sem faixa por assento
Do dotenv para o Envshed, respondido
Continuo usando um .env no dev local?
Sim. O envshed pull escreve um .env no diretório atual que qualquer ferramenta (node, vite, next) lê igualzinho a antes. A diferença é que o arquivo veio do cofre, não de uma DM no Slack.
E os meus .env que já existem?
Importa. envshed push sobe cada par CHAVE=valor para o ambiente de projeto que você escolher. Depois disso dá pra apagar as cópias comitadas.
Funciona com dotenv-cli, dotenvx, Next.js e Vite?
Funciona. O Envshed escreve o mesmo formato .env que essas ferramentas esperam. Também dá pra rodar o processo direto com envshed run -- seu-comando e pular o arquivo intermediário.
Ainda preciso de python-dotenv ou dotenv-cli?
Só se você quiser. O Envshed gera o arquivo que eles esperam ou injeta os valores direto no processo — seu código continua lendo process.env.X ou os.environ['X'] sem loader.
Move os .env para um lugar decente
Faz o cadastro, puxa o primeiro secret em menos de 30 segundos e apaga aquele .env.template que ninguém atualiza.
Começar grátisParte do Envshed.