Secure URL-friendly unique string ID generator in ~8 LOC.
This module generates secure, URL-friendly and truly random IDs. It was inspired mainly by Nano ID. It uses the new crypto.randomInt
method introduced in Node.js v14.10.0. Besides limited compatibility, the performance is also relatively low in comparison with similar libraries (about 20k ops/sec).
- Tiny size (<8 LOC)
- Same default ID length as in Nano ID
- Bigger default dictionary (includes 2 additional characters -
~
and.
) - Uses the truly random Crypto API
- URL-friendly
- Ability to customize dictionary
- Well tested
- Written in TypeScript
$ npm install attoid
import {attoid} from 'attoid';
attoid(); // => V_SiU1mrfle.wZD9YbBQ
Returns a random string.
Type: number
Default: 21
Length of the generated string.
Type: string
Default: aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ1234567890-._~
Custom dictionary, from which the string should be generated.
MIT © Antoni Kepinski