Skip to main content

PyPass Tool

pypass-tool is a Python-based password management utility that allows users to generate random passwords and store them inside a file for easy recall. It will check for password strength and provide options to adjust the length of the password and exclude specific characters. Users can choose to generate passwords using the command line (CLI), a web browser, or a desktop app.

Contents

Features | Installation | Build from scratch | Usage | Package Usage | Development | Contributing

Features

  • Command-Line Interface (CLI): Default interface for generating and managing passwords from the terminal.
  • Desktop GUI: Simple graphical interface using Tkinter for generating passwords on your desktop.
  • Web Interface: Web-based interface built with Flask for managing passwords through a browser.

Installation

Option 1: Install from PyPI

To install pypass-tool directly from PyPI:

pip install pypass-tool

Option 2: Build from Source

You can also clone the repository and build the package yourself.

  1. Clone the repository and navigate to the project directory:
git clone https://github.com/h471x/password_generator.git
cd password_generator
  1. Build the package:
python setup.py sdist bdist_wheel
  1. Install the package:
pip install dist/pypass_tool-*.whl

Usage

Once the package is installed, you can use the pypass command with different interfaces:

  • CLI Mode (default):

    pypass
    
  • Desktop GUI Mode:

    pypass gui
    
  • Web Interface Mode:

    pypass web
    

    Open your browser and navigate to http://127.0.0.1:5000.

Using as a Package

You can also use pypass-tool as a package in your own scripts. Here's an example:

from pypass import PasswordGenerator

def main():
    # Create an instance of PasswordGenerator
    new_pass = PasswordGenerator()
    
    # Set the desired password length and characters to exclude
    new_pass.set_password_length(16)
    new_pass.exclude_characters("weak12345")

    # Generate the password with the specified settings
    password = new_pass.generate_password()

    # Get the password strength
    strength = new_pass.evaluate_strength(password)
    
    # Print the generated password
    print(f"Generated Password : {password}")

    # print the password strength
    print(f"Password Strength  : {strength}")

if __name__ == "__main__":
    main()

Development

To modify or extend the functionality, ensure you have the required dependencies installed. You can add new features to the CLI, desktop, or web interface as per the structure.

Dependencies

The required dependencies for the project are listed in setup.py:

  • Flask (for the web interface)
  • Tkinter (for the desktop GUI; included with Python)

Install the required dependencies using:

pip install -r requirements.txt

Contributing

Feel free to fork this repository, open issues, or submit pull requests with improvements or bug fixes.

Release files for pypass-tool 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pypass-tool 0.3.1
File Size Uploaded
pypass-tool-0.3.1.tar.gz 14.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pypass-tool 0.3.1
File Interpreter ABI Platform
pypass_tool-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 29.7 kB

Release files / pypass-tool-0.3.1.tar.gz

Download URL pypass-tool-0.3.1.tar.gz
Size 14.2 kB
Tags Source
SHA-256 checksum
How to use checksums
a36c61a2d7ceed8eab87181b4d1427eaba4c17b8da18fbd769ec943a0ea48884
BLAKE2b-256 checksum
How to use checksums
156572f6be04cae0562c63cd69b42509063ff5814b18bcb1feacb4c582bb6519
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.11.9

Release files / pypass_tool-0.3.1-py3-none-any.whl

Download URL pypass_tool-0.3.1-py3-none-any.whl
Size 15.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
47a85ef203b1788f8f2c6ccbe123b7033a41ff6e442886ed69938cc2e505f288
BLAKE2b-256 checksum
How to use checksums
c210d2aefab0d78536617f22e1d2a84119b2f3e948cb8653561ffd404d2e7ce6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.11.9

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 release files

0.3.0

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2

2 release files

0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page