1.1.0 • Published 10 months ago

@better-password/better-password v1.1.0

Weekly downloads
-
License
MIT
Repository
github
Last release
10 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

10 months ago

1.0.2

10 months ago

1.0.1

10 months ago

1.0.0

10 months ago

0.0.3

10 months ago

0.0.2

10 months ago

0.0.1

10 months ago

0.0.0

10 months ago