Skip to main content

A package built for generating passwords

Project description

PyPasserer 🔐

Build Status

📦 Description

PyPasserer is a lightweight and fun Python package for generating, validating, and analyzing passwords.

It provides developers with simple tools to:

  • generate secure passwords
  • validate password requirements
  • estimate password strength
  • save passwords to a file

This package is designed as a learning exercise in building, testing, and distributing Python packages.


🚀 Installation

pip install PyPasserer

PyPI: (https://pypi.org/project/PyPasserer/1.0.0/)


🧪 Usage

Generate a Password

from pypasserer.passwords import generate_password

password = generate_password(length=12) print(password)


Validate a Password

from pypasserer.passwords import validate_password

validate_password("Abc123!") # True validate_password("abc") # False


Check Password Strength

from pypasserer.passwords import password_strength

strength = password_strength("Abc123!") print(strength)


Save a Password

from pypasser.passwords import password_save

password_save("Abc123!")


📚 Functions

generate_password(...)

  • Generates a password with customizable options (length, lowercase, uppercase, digits, symbols)
  • Guarantees at least one character from each selected category

validate_password(...)

  • Validates password requirements:
    • minimum length
    • lowercase letters
    • uppercase letters
    • digits
    • symbols
  • Returns True or False
  • Raises TypeError if password is not a string

password_strength(password)

  • Estimates how long it would take to crack a password
  • Returns a float between 0 and 1
  • Raises Exception if password contains spaces

password_save(password, path="saved_passwords.txt")

  • Saves password to a file
  • Returns True on success, False on failure

💻 Example Program

See examples/demo.py for a complete script demonstrating all features.


🛠️ Development Setup

git clone https://github.com/swe-students-spring2026/3-package-clouded_leopard.git cd 3-package-clouded_leopard

pipenv install pipenv install -e .

pipenv run pytest


🔁 Workflow (Contributing)

  1. git checkout -b feature/your-feature-name
  2. git add .
  3. git commit -m "Describe your changes"
  4. git push -u origin feature/your-feature-name
  5. Open a Pull Request

👥 Contributors


⚙️ Configuration

No environment variables are required.


🧾 License

See LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pypasserer-1.0.2.tar.gz (42.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pypasserer-1.0.2-py3-none-any.whl (29.4 kB view details)

Uploaded Python 3

File details

Details for the file pypasserer-1.0.2.tar.gz.

File metadata

  • Download URL: pypasserer-1.0.2.tar.gz
  • Upload date:
  • Size: 42.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.1

File hashes

Hashes for pypasserer-1.0.2.tar.gz
Algorithm Hash digest
SHA256 9b04a04bd0ec0d8069e213772ce3ce26e81cd818271c6888d380a038860515e0
MD5 2fbb8e72619364febd8c00cdafcb08b7
BLAKE2b-256 49e0d2e542d8aef6f408847e982defe6cb545f177f182ecafbe56062f2d8fe47

See more details on using hashes here.

File details

Details for the file pypasserer-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: pypasserer-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 29.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.1

File hashes

Hashes for pypasserer-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 45f48bee38cf25544b20bd1b4954b9247add1f7b091d58eabf0feb3c689572dd
MD5 9f2c92023198f95b871dff3b193872e3
BLAKE2b-256 b9d3271913fc19e56e156062899e52e5ed18f4a592f19670c8aecaeeed62b52d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page