Ananoid can serve most uses cases via the NanoId type and its associates (Alphabet, et cetera). However, sometimes this is not desired (or at least, not optimal). For times when the a struct or class is just too much, Ananoid also provides its core functionality -- cryptographically-secure randomly-generated identifiers -- as functions which take primitive inputs and just produce strings.
Further, there are some circumstances wherein it might be advantageous to only
take the lowest-level parts of the library as a source-code dependency (the
so-called "vendorizing" of dependencies). In order to accomodate this, the
library has been carefully structured so that you may simply copy the file
Core.fs
into your project and treat these functions as just another
module in your library/application/et cetera.
Attention!!!
Unfortunately, this is only applicable for F# projects... sorry ¯\(ツ)/¯.
The library is available under the Mozilla Public License, Version 2.0. For more information see the project's License file.