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.1.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.1-py3-none-any.whl (29.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pypasserer-1.0.1.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.1.tar.gz
Algorithm Hash digest
SHA256 ad1afdd4d33f0910870243381ad05b0ea92fd192b4a44e54f97ef0863f59906a
MD5 91efc45d9544a78a36143647f0fed9ed
BLAKE2b-256 7b2f4f95f6ecc6ff76ea529cb935e1bff308e2a0547a4ea6e133481f1c150371

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pypasserer-1.0.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1a5a68c485c15d2ad5df112d070f6cf01203895c34a7ad644abff710a27ca7e6
MD5 ab2fec32d010cbb41ab0ad5cf02f030c
BLAKE2b-256 69bfab7af14b6372fedecf47636ab71515bbf9a8963802b449cffcb640689bf8

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