Secrets
Understanding secrets, versioning, and secret expansion.
Secrets are the core of Redenv - encrypted key-value pairs that power your applications.
Secret Types#
Redenv stores secrets as strings, but you can store any type of data:
# Simple strings
redenv set API_KEY "sk_live_..."
# JSON data
redenv set CONFIG '{"debug": true, "timeout": 30}'
# Multiline values
redenv set PRIVATE_KEY "$(cat key.pem)"Version History#
Every change to a secret is versioned:
# View secret history
redenv history DATABASE_URL
# Output:
# Version 3 (current): postgres://new@host/db
# Version 2: postgres://old@host/db
# Version 1: postgres://initial@host/dbSecret Expansion#
Reference other secrets using ${VAR_NAME} syntax:
redenv set DB_HOST "localhost"
redenv set DB_PORT "5432"
redenv set DATABASE_URL "postgres://user:pass@\${DB_HOST}:\${DB_PORT}/mydb"When retrieved, DATABASE_URL expands to the full connection string.
Escaping#
To use a literal ${, escape with backslash:
redenv set TEMPLATE "Use \\${VAR} for variables"Deleting Secrets#
# Delete a secret
redenv delete API_KEY
# Delete from specific environment
redenv delete API_KEY --env productionTip
It can be used without Fumadocs UI, in other words, it's headless.
For beginners and normal usages, use Fumadocs UI.