Expand description
§dotenvage
A library and CLI tool for managing encrypted secrets in .env files using age encryption.
§Quick Start
use dotenvage::{SecretManager, EnvLoader};
// Load environment files with automatic decryption
EnvLoader::new()?.load()?;
// Or manage secrets manually
let manager = SecretManager::generate()?;
let encrypted = manager.encrypt_value("my-secret")?;
let decrypted = manager.decrypt_value(&encrypted)?;§Features
- Selective Encryption: Only encrypt sensitive values (tokens, passwords, API keys)
- Modern Cryptography: Uses age (X25519) for encryption
- CI/CD Friendly: Supports key loading via environment variables
- Smart Detection: Auto-detects sensitive keys based on naming patterns
- Multiple Environments: Support for .env, .env.local, .env.production, etc.
Re-exports§
pub use crate::error::SecretsError;pub use crate::error::SecretsResult;pub use crate::loader::AutoDetectPatterns;pub use crate::loader::EnvLoader;pub use crate::manager::SecretManager;