Skip to main content

A password generator based on xkcd.com/936

Project description

ninethreesix

version license made-with-python PyPI download month codecov

a password generator

installation

pip install python-ninethreesix

usage

It comes with a script!

$ ninethreesix --help
$ ninethreesix

wrench-fair-fascia

Or run with uvx:

$ uvx --from python-ninethreesix ninethreesix

From python::

>>> from ninethreesix import Password
>>> p = Password(num_words=3, min_len=3, max_len=6)
>>> p.as_string()
'whelp-word-out'

Or run the module directly::

$ python -m ninethreesix.password

show-sine-Troy

what's with the name?

See: http://xckd.com/936/

license

The code here is available under the MIT license.

word list

The bundled word list comes from the Moby Word list by Grady Ward, which is listed in the public domain.

The bundled word file is COMMON.TXT, which is:

74,550 common dictionary words (common.txt)
A list of words in common with two or more published dictionaries.
This gives the developer of a custom spelling checker a good
beginning pool of relatively common words.

For the original sources, see: http://www.gutenberg.org/ebooks/3201.

Development

If you want to work on this library, you can install the development requirements with uv sync (or make install).

This project supports Python 3.12, 3.13, and 3.14 (preferred).

Bug fixes and new features can be proposed by opening a Pull Request for this repo.

Tests

Run the test suite with uv run pytest --cov

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

python_ninethreesix-0.3.0.tar.gz (285.8 kB view details)

Uploaded Source

Built Distribution

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

python_ninethreesix-0.3.0-py3-none-any.whl (287.9 kB view details)

Uploaded Python 3

File details

Details for the file python_ninethreesix-0.3.0.tar.gz.

File metadata

  • Download URL: python_ninethreesix-0.3.0.tar.gz
  • Upload date:
  • Size: 285.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for python_ninethreesix-0.3.0.tar.gz
Algorithm Hash digest
SHA256 5a8a3c4a868c16910ed4bf234baa33f0e8a63aafb68b25e095edc9894aa4ba4d
MD5 68545be7978e96e2de7e3071ddec63ef
BLAKE2b-256 0b5a12bb2f1d860f6c0644bf4679021718a40f01041c2ba45a6f28f5712c7386

See more details on using hashes here.

File details

Details for the file python_ninethreesix-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for python_ninethreesix-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 080944299cc4dc5bb8405c45b974b00b9fd7ddc3873dd42501defa439e2328e4
MD5 81f312e226edadc287d9f8c9c121eacc
BLAKE2b-256 bb6ed71f51771c76ecee07d916d947f94339c3c6b7380a45e3a1dec8b47efa4b

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