npm.io
5.0.0 • Published 1 year ago

nanoid-dictionary

Licence
MIT
Version
5.0.0
Deps
0
Size
9 kB
Vulns
0
Weekly
0
Stars
147

nanoid-dictionary

Predefined character sets to use with nanoid. Used by nanoid-generate.

npm

Install

Install nanoid and dictionary

npm i nanoid nanoid-dictionary

Note: If you plan on using import style ES6 syntax (or node complains that it can't find the named export of the thing you're importing from nanoid-dictionary please rather install the beta version, like this

npm i nanoid-dictionary@beta

Usage

Require a customAlphabet from nanoid and pass a string from the dictionary:

import { customAlphabet } from 'nanoid';
import { lowercase } from 'nanoid-dictionary';

const lowercaseRandomString = customAlphabet(lowercase, 10);

Character sets

numbers

Numbers from 0 to 9

import { numbers } from 'nanoid-dictionary';
hexadecimalLowercase

Lowercase English hexadecimal lowercase characters: 0123456789abcdef

import { hexadecimalLowercase } from 'nanoid-dictionary';
hexadecimalUppercase

Lowercase English hexadecimal uppercase characters: 0123456789ABCDEF

import { hexadecimalUppercase } from 'nanoid-dictionary';
lowercase

Lowercase English letters: abcdefghijklmnopqrstuvwxyz

import { lowercase } from 'nanoid-dictionary';
uppercase

Uppercase English letters: ABCDEFGHIJKLMNOPQRSTUVWXYZ

import { uppercase } from 'nanoid-dictionary';
alphanumeric

Combination of all the lowercase, uppercase characters and numbers from 0 to 9

Does not include any symbols or special characters

import { alphanumeric } from 'nanoid-dictionary';
nolookalikes

Numbers and english alphabet without lookalikes: 1, l, I, 0, O, o, u, v, 5, S, s, 2, Z.

Complete set: 346789ABCDEFGHJKLMNPQRTUVWXYabcdefghijkmnpqrtwxyz

import { nolookalikes } from 'nanoid-dictionary';
nolookalikesSafe

Same as nolookalikes but with removed vowels and following letters: 3, 4, x, X, V.

This list should protect you from accidentally getting obscene words in generated strings.

Complete set: 6789BCDFGHJKLMNPQRTWbcdfghjkmnpqrtwz

import { nolookalikesSafe } from 'nanoid-dictionary';
cookieSafe

All the allowed characters for a cookie value defined in RFC6225.

import { cookieSafe } from 'nanoid-dictionary';
cookieUnsafe

All the characters that actually work in modern browsers. Might not be suitable for servers, use with caution.

import { cookieUnsafe } from 'nanoid-dictionary';