password-strength-score
v1.0.4
Published
Password strength score checker
Downloads
371
Maintainers
Readme
password-strength-score
Smallish password strength utility.
Installation
npm i password-strength-score --save
Alternatively you may use yarn
:
yarn add password-strength-score
Link to npm: https://www.npmjs.com/package/password-strength-score
Usage
Basic
import { passwordStrength } from 'password-strength-score';
passwordStrength('pass'); // returns 1 because password has only lowercase chars
passwordStrength('pass1'); // returns 2 because password has lowercase chars and a number
Strength meter component utility
import { passwordStrength, PasswordStrength } from 'password-strength-score';
import chroma from 'chroma-js';
const getPasswordScoreGradientColor = (password) => {
const score = passwordStrength(password);
chroma
.scale(['#FF4047','#00FF6E'])
.mode('rgb')
.colors(PasswordStrength.MaxScore); // generate colors array between #FF4047 - #00FF6E
return colors[score]; // Returns one color between #FF4047 - #00FF6E
};
Score calculation (default settings)
| Flag | Test | Points | | ------------ | -------------------- | ------ | | isLong | password.length > 6 | 1 | | isVeryLong | password.length > 12 | 1 | | hasUppercase | /[a-z]/ | 1 | | hasLowercase | /[A-Z]/ | 1 | | hasNumbers | /\d/ | 1 | | hasNonalphas | /\W/ | 1 |
Options
| Option | Description | Default | | ----------------------- | ------------------------------------------------------ | ------- | | isLong | Length for password to be consider as long | 6 | | isVeryLong | Length for password to be consider as very long | 12 | | withoutUppercase | Turn off score point for uppercase char occurrence | false | | withoutLowercase | Turn off score point for lowercase char occurrence | false | | withoutNumbers | Turn off score point for numbers occurrence | false | | withoutNonalphanumerics | Turn off score point for alphanumerics char occurrence | false |
Reliability
This package is fully tested with total coverage set to . If you found any issue please report it here.
License
Made with :sparkling_heart: by Bartlomiej Zuber ([email protected]) while traveling around the world, and licensed under the MIT License