# google/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/google-uuid).**

6,096 stars · 424 forks · Go · BSD-3-Clause

## Links

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

## Topics

`go` `uuid`

## Description

This is an RFC 4122 UUID package for Go that generates, parses, and validates universally unique identifiers. It provides a library for creating UUIDs that conform to standard formatting rules, along with utilities for inspecting UUID properties such as variant, version, and nil status.

The package supports DCE 1.1 Security Extension UUID generation and parsing, and includes byte-level UUID construction by directly manipulating 16-byte arrays with version and variant bits. It validates UUID strings against RFC 4122 formatting rules, including hyphens and hexadecimal characters, and can detect the nil UUID state where all 16 bytes are zero.

UUIDs can be generated, parsed from strings into 16-byte arrays, and inspected for their variant, version, and nil status. The package also provides string format validation and RFC 4122 compliant parsing for programmatic use.

## Tags

### Security & Cryptography

- [RFC 4122 Implementations](https://awesome-repositories.com/f/security-cryptography/compliance-standards/rfc-4122-implementations.md) — Implements UUID generation and parsing based on the RFC 4122 specification.
- [DCE 1.1 Security Extensions](https://awesome-repositories.com/f/security-cryptography/oauth-authentication/oauth-2-1-implementations/dce-1-1-security-extensions.md) — Implements DCE 1.1 security extension UUID generation and parsing.

### Data & Databases

- [String-to-Array Converters](https://awesome-repositories.com/f/data-databases/sql-query-interfaces/sql-converters/uuid-converters/string-to-array-converters.md) — Converts UUID strings into 16-byte arrays for programmatic manipulation and validation.
- [String-to-Byte Parsings](https://awesome-repositories.com/f/data-databases/sql-query-interfaces/sql-converters/uuid-converters/string-to-byte-parsings.md) — Converts UUID string representations into structured byte arrays for programmatic use.

### Programming Languages & Runtimes

- [UUID Parsings](https://awesome-repositories.com/f/programming-languages-runtimes/string-parsing/uuid-parsings.md) — Converts UUID strings into 16-byte arrays for programmatic use. ([source](https://cdn.jsdelivr.net/gh/google/uuid@master/README.md))

### System Administration & Monitoring

- [UUID Validation](https://awesome-repositories.com/f/system-administration-monitoring/user-group-management/uuid-validation.md) — Checks UUID strings for correct format, variant, and version compliance with RFC 4122.
- [Metadata Inspections](https://awesome-repositories.com/f/system-administration-monitoring/user-group-management/uuid-validation/metadata-inspections.md) — Examines UUID metadata including variant type, version number, and nil status.
- [Property Examinations](https://awesome-repositories.com/f/system-administration-monitoring/user-group-management/uuid-validation/property-examinations.md) — Examines UUID variant, version, and nil status to determine type and validity.
- [Property Inspections](https://awesome-repositories.com/f/system-administration-monitoring/user-group-management/uuid-validation/property-inspections.md) — Examines UUID variant, version, and nil status to determine type and validity. ([source](https://cdn.jsdelivr.net/gh/google/uuid@master/README.md))

### Testing & Quality Assurance

- [UUID Generators](https://awesome-repositories.com/f/testing-quality-assurance/uuid-generators.md) — Generates universally unique identifiers conforming to standard formatting rules. ([source](https://cdn.jsdelivr.net/gh/google/uuid@master/README.md))

### Web Development

- [UUID Format Validators](https://awesome-repositories.com/f/web-development/string-format-validators/uuid-format-validators.md) — Validates UUID string format including hyphens and hexadecimal characters.

### Part of an Awesome List

- [Unique Identifiers](https://awesome-repositories.com/f/awesome-lists/data/unique-identifiers.md) — UUID package based on RFC 4122.
- [Unique ID Generation](https://awesome-repositories.com/f/awesome-lists/devtools/unique-id-generation.md) — Official UUID package.
