A zero-knowledge, end-to-end encrypted password manager built with modern web technologies
Features • Architecture • Getting Started • Development • Contributing • License
Secure Vault is a privacy-first password management solution that puts you in complete control of your digital security. Built with enterprise-grade encryption and modern web technologies, it ensures your sensitive data remains encrypted and inaccessible to anyone but you.
- Client-side encryption: All data is encrypted before leaving your device
- Master password protection: Your master password is never transmitted or stored
- End-to-end encryption: Data remains encrypted in transit and at rest
- Zero-knowledge architecture: We cannot access your passwords or sensitive information
- End-to-End Encryption: Your data is encrypted on your device and remains encrypted on our servers, ensuring only you can access it.
- Master Password Security: Your master password is the only key to unlocking your vault.
- Secure Storage: Keep all your valuable data safe and organized in one place.
- Secure Sharing: Share your information securely with trusted individuals.
- Internationalization (i18n) support for multiple languages
- Responsive design optimized for all devices
- Dark/Light theme support with system preference detection
- Modern UI/UX built with HeroUI and Framer Motion
- Ultimate Privacy: Your data is your business. We don't have access to it.
- Peace of Mind: Securely store and manage your most important information.
- Easy to Use: A user-friendly interface makes it simple to manage your vault.
- Open Source: We welcome community contributions to make Secure Vault even better.
- TypeScript for type safety and better development experience
- Next.js 15 with App Router and Turbopack
- React 19 with latest features and optimizations
- Tailwind CSS for utility-first styling
- Zustand for state management
- React Hook Form with Zod validation
- Framework: Next.js 15 with App Router
- Language: TypeScript
- UI Library: React 19
- Styling: Tailwind CSS
- State Management: Zustand
- Forms: React Hook Form + Zod
- UI Components: HeroUI
- Animations: Framer Motion
- Internationalization: next-intl
- Node.js 18+
- Yarn 4.7.0+ (recommended) or npm
- Git
-
Clone the repository
git clone https://github.com/puneetkakkar/secure-vault-web cd secure-vault-web
-
Install dependencies
yarn install
-
Set up environment variables
cp .env.example .env.local
Configure the following variables:
NEXT_PUBLIC_API_BASE_URL=http://localhost:8080/api NEXT_PUBLIC_APP_URL=http://localhost:3000
-
Start the development server
yarn dev
-
Open your browser Navigate to http://localhost:3000
Command | Description |
---|---|
yarn dev |
Start development server with Turbopack |
yarn build |
Build for production |
yarn start |
Start production server |
yarn lint |
Run ESLint |
yarn format |
Check code formatting |
yarn format:fix |
Fix code formatting |
- ESLint for code linting
- Prettier for code formatting
- Husky for git hooks
- lint-staged for pre-commit checks
- Create a feature branch from
main
- Make your changes following the coding standards
- Run tests and ensure code quality checks pass
- Submit a pull request with a clear description
- Use TypeScript for all new code
- Follow ESLint and Prettier configurations
- Write meaningful commit messages
- Add appropriate JSDoc comments for public APIs
- Use conventional commit format
The application supports multiple languages through next-intl
. Translation files are located in the messages/
directory.
- Create a new JSON file in
messages/
(e.g.,de.json
) - Add the language configuration to the Next.js config
- Update the language selector component
- Uses Web Crypto API for cryptographic operations
- Implements industry-standard encryption algorithms
- Follows OWASP security guidelines
- Regular security audits and updates
- Never log sensitive information
- Use HTTPS in production
- Implement proper session management
- Regular dependency updates
- Security headers configuration
We welcome contributions from the community! Please read our Contributing Guidelines before submitting pull requests.
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
- Follow the installation instructions above
- Set up the backend server (see secure-vault-server)
- Configure environment variables
- Run the development server
Please read our Code of Conduct to keep our community approachable and respectable.
This project is licensed under the MIT License - see the LICENSE file for details.
- Secure Vault Server - Spring Boot backend API
- Secure Vault Mobile - React Native mobile app (WIP)
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Security: Security Policy
- Built with Next.js
- UI components from HeroUI
- Icons from Lucide React
- Encryption based on industry standards and best practices
Secure your digital life with confidence
The only key is you.