A super, serverless, ethical and free password manager! https://password.toolkiwi.com
  • TypeScript 96.8%
  • CSS 2.1%
  • JavaScript 0.7%
  • HTML 0.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Rodrigo Ramos c82988651d
chore: Revise README
Clarified offline functionality by specifying PWA support.
2026-05-04 14:56:33 +02:00
public chore(public/.htaccess): remove french description 2025-06-10 20:14:55 +02:00
src feat: Add demo vault and translations for demo feature 2025-12-28 19:39:54 +01:00
.env chore: Update environment URLs and version to 6.0 2025-12-28 19:40:10 +01:00
.eslintignore chore: add .gitignore, .prettierrc, .prettierignore, .eslintignore, and .env.exemple 2025-05-03 06:22:55 +02:00
.gitignore chore: upgrade dependencies 2025-10-20 13:56:36 +02:00
.prettierignore chore: add .gitignore, .prettierrc, .prettierignore, .eslintignore, and .env.exemple 2025-05-03 06:22:55 +02:00
.prettierrc chore: update Prettier print width and ESLint unused vars rule 2025-10-13 20:48:45 +02:00
eslint.config.js refactor: codebase for improved readability 2025-10-13 21:06:19 +02:00
index.html refactor: codebase for improved readability 2025-10-13 21:06:19 +02:00
LICENSE chore: add LICENSE file 2025-05-03 06:46:43 +02:00
package-lock.json chore: upgrade dependencies 2025-10-20 13:56:36 +02:00
package.json chore: update dependencies to latest versions 2025-12-28 17:31:34 +01:00
README.md chore: Revise README 2026-05-04 14:56:33 +02:00
tailwind.config.js Initial commit for public version: clean project base 2025-05-03 06:15:48 +02:00
tsconfig.app.json Initial commit for public version: clean project base 2025-05-03 06:15:48 +02:00
tsconfig.json refactor: codebase for improved readability 2025-10-13 21:06:19 +02:00
tsconfig.node.json Initial commit for public version: clean project base 2025-05-03 06:15:48 +02:00
vite.config.ts chore: upgrade dependencies 2025-10-20 13:56:36 +02:00
yarn.lock chore: update dependencies to latest versions 2025-12-28 17:31:34 +01:00

🔐 ToolKiwi Password Manager

Last Version Website Docker Pulls Contributors Made with ❤️ by Toolkiwi

PTK is a serverless password manager that runs entirely offline. Your data never leaves your browser, period.

No cloud storage. No user accounts. No tracking pixels. Just you, your passwords, and some solid encryption.

Give it a spin here: https://password.toolkiwi.com


What makes this Password ToolKiwi (PTK) different

  • Everything stays local — AES encryption happens right in your browser, no servers involved
  • Built-in 2FA codes — manage your TOTP codes without juggling extra apps
  • Take your vault anywhere — export to an encrypted .PTK file you can open on any device
  • Works offline — no internet? No problem (PWA)
  • Dead simple interface — we kept it clean and straightforward
  • Fully open source — peek under the hood anytime you want
  • Self-host friendly — spin up your own instance with Docker in seconds

💡 Who is this for?

PTK works great whether you're tech-savvy or just want something that works:

  • Managing personal passwords: Keep everything organized and accessible, even when you're offline.
  • Sharing credentials securely: Need to send login info to a client or teammate? Just share an encrypted .PTK file and the master password.
  • Working in security-conscious environments: No servers means no attack surface. Perfect for government, corporate, or high-privacy scenarios.
  • Going offline-first: Manage passwords, notes, and 2FA codes without depending on the cloud.
  • Staying portable: Since it runs in your browser or via Docker, you can use PTK pretty much anywhere.

🚀 Running PTK locally with Docker

Want to self-host? Here's how:

docker run -d \
  -p 8080:80 \
  --name passwordmanager \
  shiftytab/passwordmanager:latest

Then head over to: http://localhost:8080

Feel free to swap 8080 for whatever port you prefer.


🧱 Building from source

Prefer doing it yourself? No problem:

git clone https://github.com/toolkiwi/passwordmanager.git
cd passwordmanager
npm install
npm run build

🧰 How vault files work

Your vault lives in a .PTK file — basically an AES-encrypted container holding all your passwords and notes.

To open it, just load the file and enter your master password. That's it.


🔄 A few tips

  • Back up your vault regularly (seriously, do this)
  • Log out when you're done using it
  • Keep your .PTK file and master password somewhere safe — lose them and your data's gone for good

What's coming next

We're actively working on PTK. Check out what's cooking:

📜 Changelog:
https://changelog.toolkiwi.com/ptk

🗂️ Feature roadmap:
https://trello.com/b/WZc2CZZ8/password-manager


💡 Why we built this

We believe web tools should be ethical, transparent, free, and respectful of your privacy. No data mining, no third-party trackers, no bullshit.

PTK is part of our commitment to building software that puts you first.


🧑‍💻 Want to contribute?

We'd love your help! Whether it's reporting bugs, suggesting features, or submitting pull requests, all contributions are welcome.


📄 License

PTK is licensed under the Apache 2.0 License.
Check out the LICENSE file or the Apache License 2.0 for the full details.


Like what we're doing?

Here's how you can help:

  • Star the repo on GitHub
  • 🐋 Pull the Docker image and give it a try
  • 💬 Share your thoughts or report issues on GitHub

Try it nowView on GitHubDocker Hub