dotenvage
Dotenv with age encryption: encrypt/decrypt secrets in
.env files.
- Selective encryption of sensitive keys
- Uses age (X25519) for modern encryption
- Library + CLI
- CI-friendly (supports key via env var)
Install
Usage
# Generate a key
# Encrypt sensitive values in .env.local
# Edit (decrypts in editor, re-encrypts on save)
# Set a value (auto-encrypts if key name matches patterns)
# Get a decrypted value (searches .env then .env.local)
# List keys (show lock icon; verbose shows decrypted values)
# Dump decrypted .env to stdout (KEY=VALUE lines)
Library
use ;
// Load env files with auto-decryption
new?.load?;
// Encrypt and decrypt values
let manager = generate?;
let enc = manager.encrypt_value?;
let dec = manager.decrypt_value?;
Key Management
- Reads identity from
DOTENVAGE_AGE_KEY(preferred) orAGE_KEYenv vars - Otherwise uses XDG path (e.g.,
~/.local/state/dotenvage/dotenvage.key)
License
Licensed under the MIT License. See LICENSE for details.