PassGen is a neat Python GUI for my password generation logic made with CustomTkinter.
It uses the following libraries: CustomTkitner, CTkMessagebox, secrets, string, os and sys.
The binaries are currently compiled with Nuitka.
- Intuitive and modern interface
-Basic password generation-- Proper password generation with the secrets module
- Password character pool customization
- Password exportation
- Dark/Light theme switch
- Error handling with message boxes
- Binaries for both Windows and Linux
- Automatic binary updates
If you wish to use the source code version you will need to install Python.🐍
Otherwise, if you're planning on using the binary, you won't need to install any third-party application or interpreter.
If you're a Linux user, don't forget to grant executable permissions to the .AppImage binary with chmod +x!
-
Download the latest release of this project (Or download the latest version of the repository);
-
Execute the .exe binary (or the .AppImage binary if you're on Linux);
-
Input the amount of characters your password will have;
-
Click "Enter" to generate the password.
If you wish to clear, copy or export the generated password into a .txt file, click the respective button.
-
Clone the repository:
git clone https://github.com/Guilherme-A-Garcia/PassGen.git cd PassGen -
Create and activate a virtual environment (recommended):
- Linux/macOS:
python3 -m venv venv source venv/bin/activate - Windows:
python -m venv venv .\venv\Scripts\activate
- Linux/macOS:
-
Install the required packages using the
requirements.txtfile:pip install -r requirements.txt
-
Run main.py within the project's directory:
python main.py
-
- Refactor from procedural to OOP;
-
- Migrate to CustomTkinter;
-
- Themes;
-
- Proper Linux support;
-
- Introduce advanced character pool customization;
-
- Turn this whole thing into PySide6.
✨ Contributions are always welcome! ✨
- Report Bugs: Open an issue with detailed steps to reproduce.
- Suggest Features: Open an issue to discuss your idea.
- Contribute Directly to the Code:
I. Fork the repository;
II. Create a new branch;
III. Make your changes and commit;
IV. Push to the branch;
V. Open a Pull Request;
VI. Kindly wait for approval. ;)
Thank you for reading!
