Skip to main content

A Simple python package to generate customizable keys.

Project description

key-generator

PyPI version GitHub license PyPI - Python Version

A simple, yet highly customizable python package to generate professional keys.

Installation

Use the package manager pip to install key_generator.

pip install key-generator

Usage

from key_generator.key_generator import generate

key = generate(seed = 101)
print(key.get_key())  # be1679-6ae28652eb-fa7cd6-de96-a8cc

key_custom = generate(5, '-', 3, 3, type_of_value = 'hex', capital = 'none', extras = ['%', '&', '^'], seed = 42).get_key()
print(key_custom)  # ^54-10e-fa&-%34-e3e

key_custom_2 = generate(2, ['-', ':'], 3, 10, type_of_value = 'char', capital = 'mix', seed = 17).get_key()
print(key_custom_2)  # ZLFdHXIUe-ekwJCu

Parameters

parameter type optional default description
num_of_atom int yes 5 Number of parts/atoms of the key to be generated.
separator string,list yes '-' Separates the parts/atoms by separator is given a string.
If given a list, randomly chooses separators in between the atoms.
min_atom_len int yes 3 Minimum length of each part/atom.
max_atom_len int yes 10 Maximum length of each part/atom.
type_of_value string yes 'hex' Can be one of the following 3 options: hex, char, int.

hex -> key can have values only from 0-9, a-f, or A-F(depending on capital parameter).
char -> key can have values only from a-z or A-Z(depending on capital parameter).
int -> key can have values only between 0-9.
capital string yes 'none' Can be one of the following 3 options: none, all, mix.

none -> All the values in the generated key will be lowercase.
all -> All the values in the generated key will be uppercase.
mix -> A mix of both upper and lower case randomly.
extras list yes [] List of extra symbols or characters that you want to include in each part/atom.
Adds these symbols to the bucket to randomly choose characters in the atom.
seed int yes None Choose a seed value for the random key generated.
Returns the same pseudo-random value every time for a given seed value.

Testing

Run the following commands and check all tests pass.

>> git clone https://github.com/Sahith02/key-generator.git
>> cd key-generator/tests
>> python test.py       # will show how many tests passed and how many failed

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure all the above tests pass before opening a pull request.

License

MIT

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

key_generator-1.0.3.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

key_generator-1.0.3-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file key_generator-1.0.3.tar.gz.

File metadata

  • Download URL: key_generator-1.0.3.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.6.8

File hashes

Hashes for key_generator-1.0.3.tar.gz
Algorithm Hash digest
SHA256 a3170d04b67da8fe20356fe704da02ba70e0b046c115c3b5ccf253555e0a8650
MD5 1ecf8d671375cdf4adb1cc5d75166d80
BLAKE2b-256 8976a82213f901d4a1088fec91b8c34bce615482ade805101dfcea87e251cd77

See more details on using hashes here.

File details

Details for the file key_generator-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: key_generator-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.6.8

File hashes

Hashes for key_generator-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 df8a0fa50a24b33251e67131a764dd459258c5e1b4c31e9b04772d3b3fae3e6c
MD5 f9565f116c06fbf74d8a4526b07473d4
BLAKE2b-256 6fb07e52c6160dcc1f733c6bb3bfe59de7902368ec42fe547254fa9d0d523abc

See more details on using hashes here.

Supported by

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