— Software Development
Keystone
A local-first, fully offline desktop vault for the small secrets developers scatter across text files - API keys, snippets, commands, notes. Per-record ChaCha20-Poly1305 encryption with Argon2id key derivation; the master password never leaves the machine, and Win+V clipboard-history exclusion keeps copied secrets contained.
Rust Tauri ChaCha20-Poly1305 Argon2id SQLite React TypeScript Tailwind CSS
~ when Apr 2026 → Ongoing
~ status Active
~ kind Personal Project
Keystone is a local-first desktop vault for the small secrets developers scatter across loose text files - API keys, snippets, commands, and reference notes. Built for people who outgrew scattered files but don't want a shared cloud vault for personal stuff.
Security
- Per-record encryption - every item's title, value, notes, and tags are sealed individually with ChaCha20-Poly1305; only metadata (timestamps, favorites, kind) stays plaintext
- Argon2id key derivation - the master password is never stored and never leaves the machine; keys are zeroized from memory on lock
- Sleep-aware auto-lock - configurable inactivity timeout that also locks if the timeout elapsed while the machine slept
Privacy
- Fully offline - no telemetry, no auto-update server, zero network dependencies in the Rust crate; the Tauri capability file enumerates every native API the app may touch
- Win+V exclusion - copied secrets are tagged so they never enter Windows clipboard history; type-aware auto-clear wipes API keys after a configurable delay while leaving snippets and commands available to paste
Built with
- Frontend: React 19 + TypeScript, Tailwind CSS v4, Radix UI primitives
- Desktop: Tauri v2 (Rust)
- Storage: SQLite via rusqlite (bundled)
- Crypto: Argon2id KDF + ChaCha20-Poly1305 AEAD, with zeroize for in-memory key wiping
About this chart
Each axis is a functional pillar; the orange area is where my focus went, and the purple how much of that work was AI-augmented. That AI layer is where tools sped up implementation - architecture, code review, and the quality bar stay mine. I treat AI as a precision tool with strict conventions, not auto-pilot.