Hey ! Here is a quick over-view and a step-by-step guide on how to use all of the features effectively if needed (Expand details below). Please consult the requirements.txt file for all necessary libraries to run this application.
This app allows you to store passwords, generate strong random passwords, and use the recommender system built using machine learning to generate strong inteliigent passwords OR a memorable password generation (Less secure)
⚠️ Important Notice:
This project was built after relative research to implement secure and modern techniques.
However, this software is provided as-is and is not intended for public or production use. You may use it at your own risk.The code has not undergone a deep detailed code review.
- ✅ Set up a master password and backup key
- 🔐 Log in securely with your credentials
- 🗄 Manage and store your passwords in a secure vault
- 🔑 Generate strong passwords
- 🤖 Use AI to suggest secure or memorable passwords
- 🔁 Recover your account with a backup key
📖 Click to expand full user manual
If this is your first time using the application, you will be guided through a setup process:
-
Read the Terms
You will be presented with terms that address privacy concerns. Consent is required to proceed. -
Set Master Password
Choose a strong, memorable password. This will protect your vault and grant access to all features. -
Confirm Password
Re-enter your master password for confirmation. -
Submit
Save your master password. -
Backup Key
A unique key will be generated. Save this key in a secure location — it's required for account recovery. -
Copy to Clipboard
Click to copy your backup key. -
Continue to Home
Click to proceed to the main home screen.
- Theme Toggle (🌞 / 🌙 / ⚙️): Top-right corner. Switch between light and dark mode.
- Logout (❌): Top-left corner. Logs you out.
- Back to Home (←): Returns to the home screen.
Displayed after setup or subsequent launches:
- Master Password: Input your master password.
- Show Password: Reveals typed password.
- Login: Access the application.
- Forgot Password?: Recover your master password using your backup key.
The home screen provides access to core features:
- Password Vault: Manage saved credentials.
- Password Generator: Generate strong random passwords using the
secretslibrary. - Recommender System: Use AI-powered recommendations for secure or memorable passwords.
Securely store and retrieve site passwords:
- Site: Name of the website or service.
- Password: Associated password.
- Last Updated: Manually select or use the current time.
- Add Password: Save the new entry.
- Password List: View saved entries (columns: ID, Site, Password, Last Updated, Status).
- Selecting an Entry: Click a row to select it. The selected ID is shown below.
- Delete Entry: Remove the selected password.
Create secure passwords with customization options:
- Password Length: Desired character length.
- Character Options: Include uppercase, lowercase, numbers, and special characters.
- Generate: Create the password.
- Copy: Copy to clipboard.
Generate passwords using machine learning:
- AI-Generated Passwords: Secure, ML-based generation. May take time to load initially.
- Memorable Passwords: Easier to recall, but less secure.
- Generate Password: Display the new password.
- Copy: Copy to clipboard.
Use this if you've forgotten your master password:
- Enter Backup Key
- New Master Password
- Confirm New Password
- Show Password
- Reset Password
- A new backup key will be generated.
- Back to Login
Appears after setup or password reset:
- Your Backup Key: Displayed for you to save.
- Copy to Clipboard: Save the key.
- Continue to Home
- Keep your master password and backup key safe.
- Losing both will result in loss of access to your vault.
To install, follow these steps:
Linux and macOS:
sudo git clone https://github.com/Shadi-az/PM-RS.git
Windows:
git clone https://github.com/Shadi-az/PM-RS.git
This software was built using python, tensorflow, sqlite.
Additionally, Here is a list of python libraries used:
| Python Libraries |
|---|
| SQLite3 |
| Customtkinter |
| tkcalendar |
| pyperclip |
| Pillow |
| Cryptography |
MIT
Feel free to contribute or report issues by forking or cloning the repo then opening an issue or pull request on this repository. You are more than free to use this to practice any of the tech used in it.
