Repository navigation
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
1.1.0 - 2026-01-21
Added
-
Version support for Bitwarden keys: Save and manage multiple versions of keys
bw-save --name <version>: Save keys with a version name (e.g., "client-a", "v2", "backup")bw-save --note <note>: Add a description to saved keysbw-pull --name <version>: Pull a specific version- When multiple versions exist,
bw-pullprompts to select which one to use
-
bw-listcommand: View all saved keys in Bitwarden- Groups keys by project and environment
- Shows version names, notes, and timestamps
- Use
--allto show all projects (not just current)
Fixed
- Support for base
.envfile (without environment suffix)- Keys for
.envare now stored asDOTENV_PRIVATE_KEY(no suffix) - Properly detected and saved to Bitwarden as
project/root
- Keys for
1.0.0 - 2026-01-21
Added
-
initcommand: Initialize dotenvx encryption in Next.js and Vite projects- Auto-detects project type from package.json
- Scans and displays all existing
.env*files with encryption status - Shows variable preview for each environment file
- Pre-selects unencrypted files for encryption
- Installs
@dotenvx/dotenvxpackage automatically - Updates
package.jsonscripts withdotenvx run --wrapper - Configures
.gitignoreand.vercelignorefor security - Supports
--yesflag for non-interactive mode (CI/CD)
-
deploycommand: Deploy encrypted environments to Vercel- Sets
DOTENV_PRIVATE_KEY_<ENV>in Vercel environment variables - Supports production, preview, and development environments
- Optional deployment trigger after key setup
- Sets
-
encryptcommand: Encrypt environment variables- Encrypt entire
.env.<environment>files - Add or update specific variables with
-kand-vflags - Supports all environment types
- Encrypt entire
-
rotatecommand: Rotate encryption keys- Generates new encryption keys for selected environments
- Re-encrypts all variables with new keys
- Creates backup of existing keys before rotation
- Supports
--allflag to rotate all environments at once
-
bw-savecommand: Save private keys to Bitwarden- Stores keys as secure notes in Bitwarden vault
- Uses
{package.json name}/{environment}naming pattern - Creates dedicated folder for organization
- Updates existing entries on subsequent saves
- Step-by-step setup instructions when Bitwarden CLI is not configured
-
bw-pullcommand: Pull private keys from Bitwarden- Retrieves keys from Bitwarden vault
- Supports filtering by environment
- Merges with existing
.env.keysfile - Enables team onboarding and machine setup
- Step-by-step setup instructions when Bitwarden CLI is not configured
-
statuscommand: Show encryption and deployment status- Displays project type and name
- Lists all environment files with encryption status
- Shows available private keys
- Checks external tool availability (Vercel CLI, Bitwarden CLI)
- Validates security configuration
- Provides actionable recommendations
-
Installation options:
- Install from GitHub:
npm install -g github:DmacMcgreg/dotenvx-deploy - Install via script:
curl -fsSL .../install.sh | bash - Short alias:
dxd
- Install from GitHub:
Security
- Private keys (
.env.keys) are never committed to version control - Encrypted environment files are safe to commit
- Bitwarden integration for secure key backup and sharing
- Key rotation support for security best practices