Secure, Local-First Password Manager (Chrome Extension)
Cryptono is a modern, open-source password manager built as a Chrome Extension (Manifest V3). It prioritizes privacy by storing all credentials locally in an encrypted IndexedDB vault using industry-standard cryptography.
The application features a custom-built Single Page Application (SPA) interface with a sleek Glassmorphism design, entirely framework-free.
- Zero-Knowledge Architecture: Data is encrypted/decrypted locally. We never see your master password.
- Modern Encryption: Uses AES-GCM (256-bit) for data and PBKDF2 for key derivation.
- Smart Autofill: Automatically detects login fields and fills credentials matching the current domain.
- Password Generator: Built-in tool to generate strong, random passwords (configurable length and complexity).
- Vault Management: Add, edit, delete, and copy credentials to clipboard.
- Sleek UI: Custom Glassmorphism interface fully written in TypeScript and CSS variables.
- Session Security: Master password is held only in session memory (
chrome.storage.session) and cleared on browser restart or logout.
- Search and filtering of vault items.
- Import/Export functionality (encrypted JSON).
- Password strength analysis for existing items.
- Secure synchronization (optional cloud backup).
| Area | Technology |
|---|---|
| Core | TypeScript (Vanilla, no framework) |
| Build Tool | Vite + @crxjs/vite-plugin |
| Styling | CSS3 (Variables, Flexbox, Glassmorphism) |
| Storage | IndexedDB (Persistent) + Chrome Storage Session (Ephemeral) |
| Cryptography | Web Crypto API (SubtleCrypto) |
Cryptono takes security seriously. Here is how your data is handled:
- Key Derivation: Your master password is never stored. It is used to derive a cryptographic key using PBKDF2 (SHA-256, 1 milion iterations, random salt).
- Encryption: Vault items (URL, Username, Password) are encrypted using AES-GCM.
- Storage: The encrypted blobs (ciphertext + IV + salt) are stored in the browser's IndexedDB.
- Isolation: The extension runs in a sandboxed environment consistent with Chrome's MV3 security standards.
Since this project uses Vite, you need to build it before loading it into Chrome.
If You're a contributor and want to test Autofill/AutoSave use this site (Test Form) or for more fields (Test Autofill)
- Node.js (v18 or higher recommended)
- npm or yarn
-
Clone the repository
git clone https://github.com/ArturCharylo/Cryptono.git cd cryptono/cryptono -
Install dependencies
npm install
-
Build the extension
npm run build
Use
npm run devfor watch mode during development. -
Load into Chrome
- Open Chrome and navigate to
chrome://extensions/. - Enable Developer Mode (toggle in the top-right corner).
- Click Load unpacked.
- Select the
distfolder created by the build process (NOT the root source folder).
- Open Chrome and navigate to
Contributions are welcome! If you find a bug or want to add a feature:
- Fork the repository.
- Create a feature branch (
git checkout -b feature/AmazingFeature). - Commit your changes.
- Push to the branch.
- Open a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ by Artur