# armoire
Armoire is a KeePass client for the GNOME desktop, built with GTK 4 and libadwaita. It opens and creates KDBX 4 databases, the format KeePassXC and friends use, so your vault stays compatible with everything else in the KeePass family. Browse groups and entries, copy credentials with a timed clipboard clear, and read time-based codes in the Authenticator view, including codes imported from a QR image decoded locally.
The security details are where I spent the time. Password breach checks go through Have I Been Pwned the right way: the password is hashed locally and only the first five characters of the SHA-1 hash leave the machine, matching happens locally, and nothing runs automatically or while you type. A PIN can unlock the vault quickly after a lock by sealing the credentials to a key derived from the PIN — the PIN and credentials are never stored, and the master password is still required after a restart. WebDAV sync talks only to your own server and refuses to replace remote files on servers without strong ETags, so a failed precondition preserves the remote copy.
Day to day, there’s a proper search language — tag:work, group:"Personal Accounts", has:totp, is:weak, is:reused, is:expiring, combinable and excludable — with saved searches in the sidebar. Entry history keeps old versions restorable, templates cover logins, secure notes, API tokens and servers, a Recover Backup flow can rescue a corrupted vault before you’ve even opened a database, and KeePassXC compatibility is pinned down by an explicit test suite.
There are no releases yet, so today you build it from source with Cargo, Meson, or the included Flatpak manifests targeting GNOME 50. The code is on the forge — source available for reading and reference, license deliberately undecided for now.
~$