PassForge is a powerful and customizable password generator and strength evaluator tool written in Python. It allows users to generate strong passwords with various options, evaluate the strength of the generated passwords, and save them securely. Additionally, passwords can be copied to the clipboard for convenience.
-
Customizable Password Generation:
Generate passwords with customizable length, and include letters, numbers, and special characters. -
Password Strength Evaluation:
Evaluate password strength based on length and character variety (Weak, Moderate, Strong). -
Clipboard Support:
Easily copy the generated password to the clipboard with one click. -
Save Password to File:
Optionally save the password to a text file, including the password itself, generation date, and strength evaluation. -
Terminal User Interface:
A simple, interactive, and colorful terminal-based user interface.
The graphical user interface (GUI) version of PassForge, built with Tkinter, provides an easy-to-use experience for generating and evaluating passwords. The GUI version allows users to visually interact with the application, enter password length, select character types (uppercase, lowercase, numbers, special characters), and view the password strength. It also offers features such as copying to clipboard and saving passwords to a file.
To get started with PassForge, follow the steps below:
First, clone the repository to your local machine using the following command:
git clone https://github.com/can-deliktas/PassForge.git
cd PassForge
This project requires Python 3+ along with a few external libraries. Install the required dependencies by running the following command:
pip install -r requirements.txt
Once the dependencies are installed, you can run the program with:
python3 PassForge_GUI.py
After running the program, you will see the following options:
- Password Length: Enter the desired length for the password.
- Character Selection: Choose to include uppercase letters, lowercase letters, numbers, and special characters.
- Generate Password: Click the "Generate Password" button to create the password.
- Password Strength: The strength of the password will be shown as "Weak," "Moderate," "Strong," or "Very Strong."
- Copy to Clipboard: You can copy the generated password to the clipboard.
- Save Password: Save the password, timestamp, and strength evaluation to a .txt file.
When you launch the program, you will be presented with the following options:
=== PassForge ===
1. Generate Password
2. Exit
-
Generate Password:
This option allows you to create a password by specifying the desired length and character types (letters, numbers, special characters). After the password is generated, you will be prompted with the following options:- Copy to Clipboard: Choose to copy the password to your clipboard.
- Save to File: Choose to save the password in a text file with a timestamp and password strength evaluation.
-
Exit:
Exits the program gracefully.
When you choose to save the password to a file, the content of the file will look like this:
Password: w4Y#p2B7Z$W35
Generated on: date_time
Password Strength: Strong
Signature: PassForge
https://github.com/can-deliktas/PassForge/
Contributors:
can-deliktas
DevByte1328
The password, generation timestamp, strength evaluation, and the signature ("PassForge") are written to the file.
The password strength is evaluated based on the following criteria:
- Weak: Short password (less than 8 characters).
- Moderate: Moderate length (8β12 characters).
- Strong: Strong password (12+ characters).
The password strength will be printed on the screen and saved along with the password in the output file.
The project directory structure is as follows:
PassForge/
βββ PassForge.py # Main program file containing the logic
βββ PassForge_GUI.py # GUI version (Tkinter)
βββ README.md # Project documentation
βββ requirements.txt # List of dependencies for the project
βββ LICENSE # License file
This project is licensed under the MIT License - see the LICENSE file for details. Β© 2025 can-deliktas
A huge thanks to these amazing people for contributing to PassForge! π
(Want to be here? Make a contribution!)
Contributions are welcome! If you would like to contribute to PassForge, follow these steps:
Click the "Fork" button on the top-right of the repository to make a copy of this repository under your GitHub account.
To create a new branch for your feature or fix, use the following command:
git checkout -b new-feature
Edit the code or documentation to add new features or fix bugs.
Once you are satisfied with the changes, commit them:
git add .
git commit -m "Added new feature"
Push the changes to your forked repository:
git push origin new-feature
Go to the original repository and open a pull request to merge your changes.
Weβll review your changes and if everything looks good, weβll merge it into the main project.
- This project uses several open-source libraries to enhance functionality:
pyperclip
: For copying passwords to the clipboard.termcolor
: To make the terminal output colorful and interactive.random
,string
: For generating random passwords with various character sets.
All enhancements should align with the latest code in the GitHub repository and be submitted via pull requests to ensure compatibility and quality. π
PassForge was designed to be simple yet powerful. It focuses on providing customizable password generation, real-time password strength evaluation, and convenient file-saving features. The code is modular, allowing for easy enhancements and improvements.
-
π Password History:
Store previously generated passwords securely and allow users to retrieve them later. -
π Advanced Password Strength Metrics:
Implement more sophisticated password strength analysis, including entropy calculation and dictionary attack resistance. -
π± Mobile Application (Android & iOS):
Develop a mobile version of PassForge to generate and manage passwords on smartphones. -
π» Standalone Desktop Application (EXE / Mac / Linux App):
Convert PassForge into a standalone executable (.exe for Windows, .app for macOS, and .deb/.AppImage for Linux) so users can run it without needing Python installed. -
π Web-Based Version:
Create an online version of PassForge where users can generate secure passwords directly from their browser. -
π Password Manager Integration:
Allow integration with popular password managers like Bitwarden, LastPass, and KeePass.
We welcome all suggestions and contributions to improve PassForge!
PassForge β Secure Your Passwords with Ease π