1.1.0 • Published 5 months ago

@better-password/better-password v1.1.0

Weekly downloads
-
License
MIT
Repository
github
Last release
5 months ago

Better Password Generator

A secure and flexible password and PIN generation library for both Node.js and browser environments.

Features

  • Generate secure random passwords with customizable options
  • Generate random PINs with configurable length
  • Works in both Node.js and browser environments
  • ES Module support

Installation

npm install @better-password/better-password
# or
pnpm add @better-password/better-password
# or
yarn add @better-password/better-password

Usage

Password Generation

import { generatePassword } from "@better-password/better-password";

// Generate a default password (16 characters, includes lowercase, uppercase, and numbers)
const password = generatePassword();
console.log(password); // Example: "k02AX1kPprCDc1VNfvmt"

// Generate a password with custom options
const customPassword = generatePassword({
  length: 20,
  lowercase: true,
  uppercase: true,
  numbers: true,
  symbols: true,
});
console.log(customPassword); // Example: "Kj#9mP$2vN@5xL&8qR*"

Password Generation Options

OptionTypeDefaultDescription
lengthnumber16Length of the password (minimum: 8)
lowercasebooleantrueInclude lowercase letters (a-z)
uppercasebooleantrueInclude uppercase letters (A-Z)
numbersbooleantrueInclude numbers (0-9)
symbolsbooleanfalseInclude special characters (see below)

Special characters: !@#$%^&*()_+-=[]{}|;:,.<>?

PIN Generation

import { generatePIN } from "@better-password/better-password";

// Generate a default PIN (4 digits)
const pin = generatePIN();
console.log(pin); // Example: "8035"

// Generate a PIN with custom length
const customPin = generatePIN({ length: 6 });
console.log(customPin); // Example: "803593"

PIN Generation Options

OptionTypeDefaultDescription
lengthnumber4Length of the PIN (minimum: 4)

Security

  • Compatible with all modern browsers and Node.js environments
  • Ensures at least one character from each enabled character set in passwords
  • Shuffles password characters to ensure random distribution

Error Handling

The library throws errors in the following cases:

  • Password length less than 8 characters
  • PIN length less than 4 digits
  • No character types enabled for password generation
  • Password length too short to accommodate all required character types

License

MIT

Special thanks to Wei Zhu

1.1.0

5 months ago

1.0.2

5 months ago

1.0.1

5 months ago

1.0.0

5 months ago

0.0.3

5 months ago

0.0.2

5 months ago

0.0.1

5 months ago

0.0.0

5 months ago