Keyholder is a fully local, terminal-based password storage and management tool written in Python.
Keyholder makes use of the cryptography package for encryption and uses rich to render beautiful tables and formatted text.
I wrote this tool mostly for my personal use so its not the most feature loaded, but it is something. It supports securely adding, removing and viewing your stored passwords. The passwords are encrypted and then stored.
The tool uses a master password system to authenticate the user. If you forget the master password, you lose ALL your stored passwords.
You can find a build of Keyholder in the latest release. To run it just double click keyholder.exe.
To run Keyholder from source, follow these steps:
-
Clone the repo
git clone https://github.com/Koei32/keyholder cd keyholder -
Make a virtual environment and activate it
python.exe -m venv venv venv\Scripts\activate -
Install the required modules
pip install -r requirements.txt -
Run Keyholder
keyholder.py
Here are some basic commands to get you started (you can type help to get the full list of commands):
new - Store a new password
Running `new` asks you the title to give to the password, the password itself and optional notes.
list - Show a list of stored passwords
Shows a list of the passwords stored in a table. This does not actually show the password in plaintext.
view - View a password in plaintext
Runningview ID displays the password with id ID in plaintext for a few seconds.
This project was made for submission to Hack Club's Summer of Making 2025 (link). Thanks for viewing! \o
