🛠 UUIDy

uuidy
(pronounced "you-you-eye-dee") is a simple and efficient Command-Line Interface (CLI) for generating and
managing UUIDs. By default, the tool generates UUIDs of Version 4, but it supports a wide range of UUID versions and
additional functionality for parsing and working with UUIDs.
Features
- Generate UUIDs of various versions: V1, V3, V4, V5, V6, and V7
- Parse and validate UUIDs
- Support for generating multiple UUIDs at once
Why is this Tool Useful?
It simplifies tasks across various use cases:
- Quick Generation: Instantly create UUIDs for ad-hoc tasks.
- Automation-Friendly: Easily integrate into scripts, CI/CD pipelines, and automated workflows.
- Cross-Platform: Works consistently across different operating systems and environments.
- Validation: Quickly parse and verify UUIDs to ensure correctness and data integrity.
Ideal for developers and system administrators that need a lightweight, efficient, and always accessible tool for
working with UUIDs.
Installation
Install using Go
go install github.com/legaard/uuidy@latest
or Homebrew
brew install legaard/tools/uuidy
Usage
Run the uuidy
command to generate a single V4 UUID by default:
uuidy
Output:
835222e6-37b8-458f-b82c-d391b0401ec8
Commands
UUID Commands
-
null
Outputs the null UUID.
uuidy null
-
parse
Parses and validates a given UUID string.
uuidy parse e4eaaaf2-d142-11e1-b3e4-080027620cdd
-
v1
Generates a Version 1 (timestamp-based) UUID.
uuidy v1
-
v3
Generates a Version 3 (namespace-based, MD5 hash) UUID.
uuidy v3 "some value"
-
v4
Generates a Version 4 (random) UUID.
uuidy v4
-
v5
Generates a Version 5 (namespace-based, SHA-1 hash) UUID.
uuidy v5 "some value"
-
v6
Generates a Version 6 UUID.
uuidy v6
-
v7
Generates a Version 7 UUID.
uuidy v7
Additional Commands
Examples
Generate Multiple UUIDs
uuidy v7 -n 5
Ouput:
01947961-e155-7a32-82f1-1b2491f301ac
01947961-e155-7a33-ae7b-2a409d7388ab
01947961-e155-7a34-b168-c1a743900b1e
01947961-e155-7a35-b87a-71833dc172fc
01947961-e155-7a36-8374-9ecb5b7c0675
Generate UUID with custom namespace
uuidy v5 --namespace 869d7b84-d678-11ef-91a1-426648c33d81 "some value"
Ouput:
e21ac596-de47-5afa-a4c6-009662c4b663
Generate UUID with custom epoch
uuidy v7 --epoch 2025-01-18T13:10:05+01:00
Ouput:
01947952-0148-73d4-bca8-095cd1891884
Parse a UUID
uuidy parse 2733f45e-d595-11ef-b95f-426648c33d81
Ouput:
version: 1
time: 2025-01-18T13:10:05.633443+01:00