Skip to main content

Generating serious and funny passwords.

Project description

GitHub Workflow Status

Password Generator

Our python package provides various password generation and manipulation functions, including a fun password generator that creates hilarious word combinations.

Pypi Website: Link

Installation

To install the package:

pip install passgenpyNYU==1.1.0

To install the package into your virutal environment:

pipenv install passgenpyNYU==1.1.0

To activate your virtual environment:

pipenv shell

To exit your virtual environment:

exit

To run the package from the terminal:

passgenpyNYU -g 10

The above calls the generate function to generate a random password of length 10. Use "python3 -m passgenpyNYU -h" to see all available terminal commands.

Features / Running the package in your own code

The package provides several functions for password generation and manipulation:

1. generate(length)

Generates a random password with specified characteristics.

Parameters:

  • length (int): The desired length of the password

Example:

from passgenpyNYU import core as cd

# Generate a simple 8-character password
password = cd.generate(8)

2. caesar_cipher(word, shift)

Applies a Caesar cipher to the input string.

Parameters:

  • word (str): The text to encrypt
  • shift (int): The shift value (must be between 1 and 25)

Example:

from passgenpyNYU import core as cd

encrypted = cd.caesar_cipher("Hello", 3)

3. scramble(string)

Randomly scrambles the characters in the input string.

Parameters:

  • string (str): The text to scramble

Example:

from passgenpyNYU import core as cd

scrambled = cd.scramble("Hello World")

4. binary_password(length)

Generates a random binary password of specified length.

Parameters:

  • length (int): The desired length of the binary password

Example:

from passgenpyNYU import core as cd

binary = cd.binary_password(8)

5. generateHash(password)

Generates a SHA-256 hash of the input password.

Parameters:

  • password (str): The password to hash

Example:

from passgenpyNYU import core as cd

hashed = cd.generateHash("myPassword123")

6. getFunnyPassword()

Generates a funny password by combining random words from predefined lists.

Example:

from passgenpyNYU import core as cd

funny_pass = cd.getFunnyPassword()

Link to Example code: example.py

How to Contribute:

Clone the git repository into your local repository using the following command:

git clone https://github.com/software-students-spring2025/3-python-package-ejsm.git

To execute any of the following steps, first navigate to the project directory:

cd [path to project directory]

To set up the virtual environment, you must first download pipenv:

pip install pipenv

Next, use the following command to activate the virtual environment:

pipenv shell

If you want to install dependencies into your virtual environment:

pipenv install [name of package]

To build the package, you must first activate the virtual environment and then build:

pipenv shell
python3 -m build

To test the package, you must first activate the virtual environment and then test using pytest:

pipenv shell
python3 -m pytest

There are already 27 different tests cases that can found in tests/test_core.py.

To make contributes, you must first create a new branch, switch to that branch, commit that branch to the git repository and make a Pull Request on git:

git branch [branch name]
git checkout [branch name]
git add [file]
git commit -m "commit message"
git push origin [branch name]

Contributors:

Jeffrey Chen - Github Link

Shaurya Srivastava - Github Link

Ethan Zheng - Github Link

Max Meyring - Github Link

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

passgenpynyu-1.1.0.tar.gz (44.6 kB view details)

Uploaded Source

Built Distribution

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

passgenpynyu-1.1.0-py3-none-any.whl (30.4 kB view details)

Uploaded Python 3

File details

Details for the file passgenpynyu-1.1.0.tar.gz.

File metadata

  • Download URL: passgenpynyu-1.1.0.tar.gz
  • Upload date:
  • Size: 44.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for passgenpynyu-1.1.0.tar.gz
Algorithm Hash digest
SHA256 34dae618bf163576a965abfeb825b600b03b09f466668c58929dd27da8468044
MD5 1f478671bc5417e730c34d147ce0d365
BLAKE2b-256 4343fb84d61d00b8eed90f4ea3d6222d4ceff86e67cbcab729032e3ad2de8466

See more details on using hashes here.

File details

Details for the file passgenpynyu-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: passgenpynyu-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 30.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for passgenpynyu-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ec09da42462f3fca2c7247aa6398cd0fbcab9b97bcae7bc13ce5d264a25a0def
MD5 f428c7e7b60acb0507cd16aef66ccd7d
BLAKE2b-256 66a56e43dec7b701344766a043e9f8b424e21f828143d7cbfe4708bf1ef0afaf

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