Skip to content

๐Ÿ”’ Meet Password Genie! ๐Ÿงžโ€โ™‚๏ธ ๐ŸŽฉ Versatile: Command-line or user-friendly GUI options. ๐Ÿ”‘ Generates secure passwords effortlessly. ๐Ÿ’ป Say goodbye to password stress! With Password Genie, your online security is a breeze, now including a hashing interface within the GUI tabs.

License

Notifications You must be signed in to change notification settings

dom557/password-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

21 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Password Generator ๐Ÿ›ก๏ธ

GitHub release GitHub license GitHub issues

This is a versatile password generator offering both a simple command-line interface and a user-friendly graphical user interface (GUI) for creating random, secure passwords. The latest release also includes a feature to hash passwords using the SHA-256 algorithm.

Table of Contents

Installation ๐Ÿš€

Prerequisites:

  • Python 3.x

Steps:

  1. Clone the repository:

    git clone https://github.com/yourusername/password-generator.git
  2. Navigate to the project directory:

    cd password-generator
  3. Install dependencies:

    pip install -r requirements.txt

Usage ๐ŸŽฎ

Using the Command-Line

Generating a Random Password (Default Settings):

python src/main.py

This command generates a password with a default length of 10 characters, comprising a mix of uppercase letters, lowercase letters, digits, and special characters.

Specifying Password Length:

python src/main.py <length>

Replace <length> with the desired password length (minimum 1 character).

Specifying Character Types:

python src/main.py [OPTIONS]

Use the following options to customize the password composition:

  • -u or --uppercase: Include uppercase letters
  • -l or --lowercase: Include lowercase letters
  • -d or --digits: Include digits
  • -s or --special: Include special characters

You can combine these options to create passwords with specific requirements. For example:

python src/main.py -l 16 -u -d

This command generates a password of length 16 containing lowercase letters, uppercase letters, and digits.

Using the GUI

  1. Run the GUI application by executing python gui.py in your terminal.
  2. Navigate between tabs for different functionalities:
    • Generate Password: Enter the desired password length and select the character types you want to include using the checkboxes (uppercase, lowercase, digits, special characters). Click the "Generate" button to create a random password based on your selections. The generated password will be displayed in the password entry field.
    • Hash Password: Enter the password you want to hash in the designated entry field. Click the "Hash Password" button to generate the SHA-256 hash of the entered password. The hashed password will be displayed in the hash result entry field.

Features ๐ŸŒŸ

  • Generate random passwords of specified length (minimum 1 character).
  • Customize password complexity by including or excluding uppercase letters, lowercase letters, digits, and special characters (both in GUI and command-line).
  • Hash passwords using SHA-256 algorithm.
  • Simple and intuitive command-line interface.
  • User-friendly graphical user interface for easy interaction.

Requirements โš™๏ธ

  • Python 3.x
  • argparse library (included in the requirements.txt file)
  • tkinter library (included in the requirements.txt file)

Installation:

pip install -r requirements.txt

Project Structure ๐Ÿ“

password_generator/
โ”‚
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ __init__.py
โ”‚   โ”œโ”€โ”€ main.py
โ”‚   โ””โ”€โ”€ generator.py
โ”‚
โ”œโ”€โ”€ tests/
โ”‚   โ”œโ”€โ”€ __init__.py
โ”‚   โ””โ”€โ”€ test_generator.py
โ”‚
โ”œโ”€โ”€ gui.py  # GUI application file
โ”œโ”€โ”€ README.md
โ””โ”€โ”€ requirements.txt

License ๐Ÿ“

This project is licensed under the MIT License - see the LICENSE file for details.

Author โœ๏ธ

Abahazem

About

๐Ÿ”’ Meet Password Genie! ๐Ÿงžโ€โ™‚๏ธ ๐ŸŽฉ Versatile: Command-line or user-friendly GUI options. ๐Ÿ”‘ Generates secure passwords effortlessly. ๐Ÿ’ป Say goodbye to password stress! With Password Genie, your online security is a breeze, now including a hashing interface within the GUI tabs.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages