Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@alizeait/uuid

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@alizeait/uuid

A fast and tiny RFC compliant uuid v4 generator

  • 2.0.3
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

@alizeait/uuid Check Coverage

A tiny (~260B) and super fast RFC4122 compliant v4 UUID generator.

Supports both Nodejs and Browser environments while using native cryptography features.

Includes ESM and Commonjs/Nodejs bundles. Allows bundlers like Webpack and Rollup to pick the correct bundle for different environments.

Check out the playground

Installation

$ npm install @alizeait/uuid

Usage

import { v4 } from "@alizeait/uuid";

v4(); //  'dc8c63d6-55e0-49be-9d68-19b0e51be2a6'
v4(); //  'e3f68a1e-d22b-4c94-bc6b-78b44c1608f3'

Benchmarks

uuid/v4               x 1,006,107 ops/sec ±1.04% (82 runs sampled)
@alizeait/uuid        x 4,262,898 ops/sec ±0.98% (87 runs sampled)
nanoid                x 1,779,066 ops/sec ±1.58% (91 runs sampled)


RFC UUID v4 validation:

uuid/v4               ✔
@alizeait/uuid        ✔
nanoid                ✘

Running on Node.js v12.13.0, 64-bit OS, Intel(R) Core(TM) i5-6600K CPU @ 3.50GHz, 16.0 GB RAM

Why is @alizeait/uuid so fast?

It first fills a large(6144 bytes) Uint8Array typed array buffer with cryptographically strong random values using the browser/nodejs crypto API(Meaning that it fills an array buffer randomly with numbers between 0 and 255). It then generates an array of 2 digit hexadecimal numbers(length=256) and starts slicing off chunks from the buffer as needed, meaning that each buffer is able to supply 384 v4 UUID random invocations. When the buffer is all used up, it generates a new one with the crypto APIs and iterates.

This caching mechanism allows for faster composition and generation of the uuids.

Keywords

FAQs

Package last updated on 25 Jun 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc