Predefined character sets to use with nanoid. Used by nanoid-generate.
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
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);
Numbers from 0 to 9
import { numbers } from 'nanoid-dictionary';
Lowercase English hexadecimal lowercase characters: 0123456789abcdef
import { hexadecimalLowercase } from 'nanoid-dictionary';
Uppercase English hexadecimal uppercase characters: 0123456789ABCDEF
import { hexadecimalUppercase } from 'nanoid-dictionary';
Lowercase English letters: abcdefghijklmnopqrstuvwxyz
import { lowercase } from 'nanoid-dictionary';
Uppercase English letters: ABCDEFGHIJKLMNOPQRSTUVWXYZ
import { uppercase } from 'nanoid-dictionary';
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';
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';
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';