.envVault is a modern, secure, and user-friendly platform for managing, encrypting, and organizing your environment variables. Built with Next.js and React, it provides developers and teams with a seamless way to store, upload, and control access to sensitive configuration data.
-
Secure Storage:
All environment variables are encrypted client-side using AES-256-GCM before being stored, ensuring only you can access your secrets. -
File Upload & Parsing:
Upload.envfiles and automatically parse variables for easy import. -
Organization:
Group your variables by project or environment for better management. -
Access Control:
Only authenticated users can access their environment variables. -
Modern UI:
Responsive, accessible, and visually appealing interface built with React, Tailwind CSS, and Lucide icons. -
Authentication:
Simple login and signup flows to keep your data private.
envvault/
├── app/
│ ├── globals.css
│ ├── layout.tsx
│ ├── page.tsx
│ ├── auth/
│ │ ├── login/page.tsx
│ │ └── signup/page.tsx
│ ├── dashboard/page.tsx
│ └── setup/page.tsx
├── components/
│ ├── Navbar.tsx
│ ├── add-variable-modal.tsx
│ ├── edit-variable-modal.tsx
│ ├── file-upload-modal.tsx
│ ├── group-management.tsx
│ ├── variable-table.tsx
│ └── ui/
│ └── ... (UI primitives)
├── utils/
│ └── crypto.ts
├── public/
│ └── image.svg
├── package.json
└── README.md
- Landing page with navigation, hero section, feature cards, and footer.
- Uses
Navbar,Button,Card, and Lucide icons for a polished look.
- Responsive navigation bar with links to login and signup.
- Collection of reusable UI primitives (buttons, cards, dialogs, etc.) for consistent design.
- Handles all cryptographic operations:
- AES-256-GCM encryption/decryption
- PBKDF2 key derivation
- Base64 encoding/decoding
- Ensures secrets are encrypted before storage.
- Client-side encryption:
Secrets are encrypted in the browser using a password-derived key. The server never sees your plaintext secrets or password. - PBKDF2:
Passwords are strengthened with 150,000 iterations and a random salt. - AES-GCM:
Modern, authenticated encryption for confidentiality and integrity.
git clone https://github.com/yourusername/envvault.git
cd envvaultnpm installnpm run devVisit http://localhost:3000 in your browser.
- All variables are encrypted before leaving your device.
- Only you can decrypt them with your password.
- Upload
.envfiles. - Variables are parsed and ready for secure storage.
- Group variables by project or environment.
- Easily manage large sets of secrets.
- Authentication required for all sensitive actions.
- Only you can view or modify your data.
- Frontend: Next.js, React, Tailwind CSS
- UI: Lucide Icons, Custom UI primitives
- Crypto: Web Crypto API (browser & Node.js compatible)
- TypeScript: Type safety throughout
// Encrypt a value before storing
import { encryptValue } from "@/utils/crypto";
const encrypted = await encryptValue("MY_SECRET", "user-password");
// Store `encrypted` object in your backend or local storagePull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.
MIT License
Made for devs by devs.
© All rights reserved. {Current Year}