Open source ยท macOS ยท Windows ยท Linux

One vault for
every secret

Discover, catalog, compare, and encrypt every .env file across all your projects. A single pane of glass for all your secrets.

Also available for Windows and Linux ยท <5MB binary

DotVault โ€” ~/projects
Roots
๐Ÿ“ ~/projects
๐Ÿ“ ~/clients
Projects
โ–ธ my-saas-app
โ–ธ api-service
โ–ธ landing-page
โ–ธ mobile-app
my-saas-app
Node.js ยท 6 env files ยท 72 variables
Synced
โ”œโ”€โ”€.envbase12 vars
โ”œโ”€โ”€.env.locallocal14 vars
โ”œโ”€โ”€.env.developmentdevelopment11 vars
โ”‚ โ””โ”€โ”€.env.development.localdev.local13 vars
โ”œโ”€โ”€.env.stagingstaging10 vars
โ””โ”€โ”€.env.productionproduction12 vars
ย  ย  โ””โ”€โ”€.env.production.localprod.local13 vars
โš  2 warnings: API_KEY missing in staging ยท REDIS_URL empty in production
Features

Everything you need to
manage your secrets

Point it at your project roots. It does the rest.

๐Ÿ”

Multi-Root Discovery

Register any number of root directories. Recursive scanning finds every project and every env file โ€” monorepos included.

๐ŸŒณ

Dot-Depth Hierarchy

Parses file names into structured environment tiers. See base, local, development, staging, and production at a glance.

โšก

Live File Watching

Filesystem events trigger instant updates. Add, remove, or modify an env file and the vault reflects it in under 100ms.

๐Ÿ”

AES-256-GCM Encryption

Master password derives a key via Argon2id. All secret values are encrypted at rest in a local SQLite vault.

๐Ÿ“Š

Cross-Env Comparison

A matrix view shows which keys exist where. Catch missing variables, empty values, and localhost URLs before they break production.

โŒจ๏ธ

Global Search (โŒ˜K)

Fuzzy search across every project, environment, and variable name. Filter by tier, depth, or warning status instantly.

Comparison

Catch drift before
it catches you

See exactly which variables exist โ€” or are missing โ€” across every environment.

my-saas-app

baselocalstagingproduction
Variablebaselocalstagingproduction
DATABASE_URLโœ“โœ“โœ“โœ“
API_KEYโœ“โœ“โœ—โœ“โš  missing in staging
STRIPE_SECRETโœ—โœ—โœ—โœ“
DEBUGโœ“โœ“โœ“โœ—
REDIS_URLโœ“โœ—โœ“โ—โš  empty value
Passwordโ€ขโ€ขโ€ขโ€ขโ€ขโ€ขโ€ขโ€ขโ€ขโ€ขโ€ขโ€ข
โ†“ Argon2id
256-bit Keya7f3e2...c9d1b8
โ†“ AES-256-GCM
SQLite Vaultkeys: plaintext ยท values: encrypted
Security

Encrypted at rest.
Searchable by design.

Variable names stay in plaintext for instant search and comparison. The actual secret values are encrypted with AES-256-GCM, keyed by your master password through Argon2id.

No network access. No telemetry. No cloud. Your secrets never leave your machine.

  • โœ“Argon2id memory-hard key derivation
  • โœ“AES-256-GCM authenticated encryption
  • โœ“Auto-lock after 15 min inactivity
  • โœ“Clipboard auto-clear after 30 seconds
  • โœ“Values zeroized in memory after use
  • โœ“Master password never stored
<5MB
Binary size
<3s
Scan 100 projects
<30ms
Search 10k variables
<500ms
Startup to usable UI
โ€œYour secrets deserve a vault, not a text file.โ€

Ready to secure
your .env files?

Free, open source, and local-first. Download DotVault and stop leaving secrets in plaintext.