# kelektiv/node-uuid

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/kelektiv-node-uuid).**

15,297 stars · 972 forks · TypeScript · MIT

## Links

- GitHub: https://github.com/kelektiv/node-uuid
- awesome-repositories: https://awesome-repositories.com/repository/kelektiv-node-uuid.md

## Description

node-uuid is a JavaScript library for generating and validating universally unique identifiers that comply with the RFC 4122 standard. It provides a utility for creating random, timestamp-based, or namespace-based identifiers within a Node.js environment.

The library includes tools for detecting the specific standard version of a provided identifier and transforming identifiers between different versions. It also provides a command line utility for generating identifiers directly from the terminal.

The project covers binary manipulation, including parsing strings into byte arrays and stringifying byte arrays back into readable formats. It also includes capabilities for format validation to verify if a given string conforms to the required structural standards.

## Tags

### Data & Databases

- [Unique Identifier Generators](https://awesome-repositories.com/f/data-databases/data-management/unique-identifier-generators.md) — Creates globally unique identifiers in JavaScript that strictly follow RFC 4122 international standards.

### Operating Systems & Systems Programming

- [Chronological Identifier Versioning](https://awesome-repositories.com/f/operating-systems-systems-programming/system-administration-maintenance/system-clock-utilities/timestamp-injection/system-timestamping/chronological-identifier-versioning.md) — Incorporates current system time into identifier structures to ensure chronological uniqueness across different generators.

### Programming Languages & Runtimes

- [JavaScript Utility Libraries](https://awesome-repositories.com/f/programming-languages-runtimes/javascript-utility-libraries.md) — Functions as a JavaScript utility library specifically for generating and validating RFC 4122 compliant UUIDs.

### Security & Cryptography

- [Compliance Enforcement Tools](https://awesome-repositories.com/f/security-cryptography/compliance-enforcement-tools.md) — Ensures that all produced identifiers strictly adhere to international RFC 4122 communication and security standards. ([source](https://github.com/kelektiv/node-uuid#readme))
- [Cryptographic Random Number Generators](https://awesome-repositories.com/f/security-cryptography/cryptographic-random-number-generators.md) — Uses a cryptographically strong random number generator to ensure high collision resistance for UUIDs.
- [Format Validators](https://awesome-repositories.com/f/security-cryptography/pattern-matching-engines/format-validators.md) — Verifies if a given string conforms to the required structural format of a unique identifier using regular expressions. ([source](https://github.com/kelektiv/node-uuid#readme))
- [Identifier Version Conversion](https://awesome-repositories.com/f/security-cryptography/identifier-version-conversion.md) — Provides functionality to transform identifiers between different RFC 4122 versions. ([source](https://github.com/kelektiv/node-uuid#readme))
- [Identifier Version Detection](https://awesome-repositories.com/f/security-cryptography/identifier-version-detection.md) — Implements tools to detect the specific standard version of a provided unique identifier. ([source](https://github.com/kelektiv/node-uuid#readme))

### Software Engineering & Architecture

- [Namespace-Based Identifiers](https://awesome-repositories.com/f/software-engineering-architecture/string-matching-algorithms/hashing-based-matching/namespace-based-identifiers.md) — Implements namespace-based UUID generation using SHA-1 digests as per RFC 4122.
- [Binary Data Layouts](https://awesome-repositories.com/f/software-engineering-architecture/binary-data-layouts.md) — Handles unique identifiers as byte arrays to ensure exact adherence to official RFC layout and versioning standards.
- [Binary Data Parsers](https://awesome-repositories.com/f/software-engineering-architecture/binary-data-parsers.md) — Provides a toolkit for converting unique identifier strings into byte arrays and back.
- [Binary-to-String Transformations](https://awesome-repositories.com/f/software-engineering-architecture/binary-to-string-transformations.md) — Converts unique identifier strings into byte arrays and back for efficient storage and processing.

### System Administration & Monitoring

- [Identifier Validation](https://awesome-repositories.com/f/system-administration-monitoring/user-group-management/identifier-validation.md) — Validates that a given string conforms to the required structural format and version of a standard UUID.

### Development Tools & Productivity

- [Command Line Utilities](https://awesome-repositories.com/f/development-tools-productivity/terminal-shell-cli/terminal-cli-enhancements/shell-terminal-utilities/general-enhancements-tooling/terminal-productivity/command-line-utilities.md) — Provides a terminal-based tool for generating unique identifiers directly from the command line. ([source](https://github.com/kelektiv/node-uuid#readme))

### DevOps & Infrastructure

- [Identifier Version Transformations](https://awesome-repositories.com/f/devops-infrastructure/version-control-management/version-control/serialization-versioning/identifier-version-transformations.md) — Detects the version of a unique identifier and transforms it into a different standard version.

### Part of an Awesome List

- [General Utilities](https://awesome-repositories.com/f/awesome-lists/devtools/general-utilities.md) — Generates RFC-compliant UUIDs.
