Vault
Encrypted receipt storage, sorted for LHDN.
No accounts exist yet
Create the first administrator by running
npm run invite:admin on the server, then open the link it prints.
Accounts are by invitation. Ask an administrator for a link.
Your password never leaves this device. It is stretched here and only the result is sent, which is also what unlocks your receipts — so nobody running this server can read them.