Secure backup and restoration of your browser cookies for seamless migrations.
Features β’ Background β’ Getting Started β’ Development β’ Roadmap
Cookie Vault is a local-first Chrome extension designed for privacy-conscious users who need to migrate browser sessions between devices or browsers without re-authenticating.
- π Military-Grade Encryption: Uses AES-256-GCM via the Web Crypto API. Your password never leaves your device.
- π Universal Formats:
- Backup to encrypted
.cvfiles. - Export to Netscape HTTP Cookie File format (compatible with
wget,curl,yt-dlp). - Export to JSON for JDownloader.
- Backup to encrypted
- π‘οΈ Zero Standing Privileges: Runs with minimal permissions (
activeTab) and only requests broad access when you explicitly initiate a backup. - πͺ Legacy Support: Fully compatible with
.ckzfiles from older cookie backup extensions. βοΈ Offline Ready: Fully functional without an internet connection.
Migrating to a new computer or switching browsers is often a painful process of logging into dozens of websites again. Existing tools were either outdated, closed-source, or required sending data to a cloud server.
Cookie Vault was built to solve this problem with a "Security First" philosophy. We believe your session data is sensitive and should never leave your control. By implementing Zero Standing Privileges and Local-First Architecture, we ensure that even if the extension were compromised, your data remains safe.
- Node.js 18+
- npm 9+
-
Clone the repository
git clone https://github.com/Zendevve/cookie-vault.git cd cookie-vault -
Install dependencies
npm install
-
Build the extension
npm run build
-
Load in Chrome/Edge/Brave
- Open
chrome://extensions - Enable Developer mode
- Click Load unpacked
- Select the
dist/folder
- Open
cookie-vault/
βββ src/
β βββ components/ # React UI components
β βββ hooks/ # Custom React hooks
β βββ lib/ # Core logic (crypto, cookies)
β βββ assets/ # Static assets
β βββ App.tsx # Main entry point
β βββ manifest.json # Extension manifest
βββ docs/ # Documentation & Assets
βββ .github/ # GitHub templates & workflows
βββ dist/ # Production build artifacts
Cookie Vault works out of the box, but you can customize the build process:
| Environment Variable | Description |
|---|---|
VITE_APP_VERSION |
Override the version number displayed in the UI |
We use Vitest for unit and integration testing.
# Run all tests
npm run test
# Run with coverage report
npm run test:coverageOur test suite covers:
- β Crypto round-trip (Encryption/Decryption)
- β Partitioned cookie handling (CHIPS)
- β Legacy format imports
- β Password validation logic
We follow a structured roadmap located in docs/ROADMAP.md.
- v1.0.0: Initial Release (AES-256 Encryption)
- v1.1.0: Netscape & JDownloader Exports (Current)
- v1.2.0: Firefox Support (Gecko)
- v1.3.0: Encrypted Cloud Sync (Optional)
Contributions are welcome! Please read our Contributing Guidelines and Code of Conduct.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
For security vulnerabilities, please refer to our Security Policy.
Distributed under the GNU GPLv3 License. See LICENSE for more information.
See CREDITS.md for the full list of contributors and acknowledgement of open-source libraries used in this project.
