View Source Nanoid.NonSecure (Nanoid v2.1.0)

Generate an URL-friendly unique ID. This method use the non-secure, predictable random generator. By default, the ID will have 21 symbols with a collision probability similar to UUID v4.

Summary

Functions

Generates a non-secure NanoID using the default alphabet.

Generate a non-secure NanoID using a custom size and an individual alphabet.

Functions

Link to this function

generate(size \\ Configuration.default_size())

View Source
@spec generate(non_neg_integer()) :: binary()

Generates a non-secure NanoID using the default alphabet.

Example

Generate a non-secure NanoID with the default size of 21 characters.

iex> Nanoid.NonSecure.generate()
"mJUHrGXZBZpNX50x2xkzf"

Generate a non-secure NanoID with a custom size of 64 characters.

iex> Nanoid.NonSecure.generate(64)
"wk9fsUrhK9k-MxY0hLazRKpcSlic8XYDFusks7Jb8FwCVnoQaKFSPsmmLHzP7qCX"
Link to this function

generate(size, alphabet)

View Source
@spec generate(non_neg_integer(), binary() | list()) :: binary()

Generate a non-secure NanoID using a custom size and an individual alphabet.

Example

Generate a non-secure NanoID with the default size of 21 characters and an individual alphabet.

iex> Nanoid.NonSecure.generate(21, "abcdef123")
"d1dcd2dee333cae1bfdea"

Generate a non-secure NanoID with custom size of 64 characters and an individual alphabet.

iex> Nanoid.NonSecure.generate(64, "abcdef123")
"aabbaca3c11accca213babed2bcd1213efb3e3fa1ad23ecbf11c2ffc123f3bbe"