https://github.com/tarunbatra/password-validator-python
Validates password according to flexible and intuitive specification
https://github.com/tarunbatra/password-validator-python
password password-validator pypi python python-library schema validate validation validation-library
Last synced: 5 months ago
JSON representation
Validates password according to flexible and intuitive specification
- Host: GitHub
- URL: https://github.com/tarunbatra/password-validator-python
- Owner: tarunbatra
- License: mit
- Created: 2020-04-27T11:16:25.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-05-31T21:06:33.000Z (over 5 years ago)
- Last Synced: 2025-04-08T03:11:14.355Z (6 months ago)
- Topics: password, password-validator, pypi, python, python-library, schema, validate, validation, validation-library
- Language: Python
- Homepage: https://tarunbatra.com/password-validator-python
- Size: 5.61 MB
- Stars: 17
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
| |logo|
| |pypi version| |build| |coverage| |python version| |github release|
password_validator
==================This is a python port of ``npm`` package
`password-validator `__.Install
-------``pip install password-validator``
Usage
-----.. code:: py
from password_validator import PasswordValidator
# Create a schema
schema = PasswordValidator()# Add properties to it
schema\
.min(8)\
.max(100)\
.has().uppercase()\
.has().lowercase()\
.has().digits()\
.has().no().spaces()\# Validate against a password string
print(schema.validate('validPASS123'));
# => True
print(schema.validate('invalidPASS'));
# => FalseRules
-----Rules supported as of now are:
+--------------------+-------------------------------------------------------------------+
| Rules | Descriptions |
+====================+===================================================================+
| **digits()** | specifies password must include digits |
+--------------------+-------------------------------------------------------------------+
| **letters()** | specifies password must include letters |
+--------------------+-------------------------------------------------------------------+
| **lowercase()** | specifies password must include lowercase letters |
+--------------------+-------------------------------------------------------------------+
| **uppercase()** | specifies password must include uppercase letters |
+--------------------+-------------------------------------------------------------------+
| **symbols()** | specifies password must include symbols |
+--------------------+-------------------------------------------------------------------+
| **spaces()** | specifies password must include spaces |
+--------------------+-------------------------------------------------------------------+
| **min(len)** | specifies minimum length |
+--------------------+-------------------------------------------------------------------+
| **max(len)** | specifies maximum length |
+--------------------+-------------------------------------------------------------------+
| **no([regex])** | inverts the result of validations applied next |
+--------------------+-------------------------------------------------------------------+
| **has([regex])** | inverts the effect of **no()** and applies a regex (optional) |
+--------------------+-------------------------------------------------------------------+For more examples and complete API reference, check the `documentation `__.
License
-------`MIT License `__
.. |pypi version| image:: https://img.shields.io/pypi/v/password-validator?color=blue&logo=password_validator&style=flat-square
:alt: GitHub release
:target: https://pypi.org/project/password-validator
.. |python version| image:: https://img.shields.io/pypi/pyversions/password-validator?color=red&logo=version&style=flat-square
:alt: Python version
.. |logo| image:: https://res.cloudinary.com/tbking/image/upload/v1490803400/password-validator/logo.png
:alt: Password Validator
:target: https://tarunbatra.com/password-validator-python
.. |build| image:: https://img.shields.io/github/workflow/status/tarunbatra/password-validator-python/CI?logo=github&style=flat-square
:alt: Build
:target: https://github.com/tarunbatra/password-validator-python/actions?query=workflow%3ACI
.. |coverage| image:: https://img.shields.io/codecov/c/gh/tarunbatra/password-validator-python?logo=codecov&style=flat-square
:alt: Code Coverage
:target: https://codecov.io/gh/tarunbatra/password-validator-python
.. |github release| image:: https://img.shields.io/github/v/release/tarunbatra/password-validator-python?color=magenta&include_prereleases&logo=github&sort=semver&style=flat-square
:alt: GitHub release
:target: https://github.com/tarunbatra/password-validator-python/releases/latest