Erlang implementation for generating UUIDs (versions 1, 3, 4, 5, 6, 7, 8) with native Erlang process and node information.
Erlang Native UUID Generation
Version 1 UUID encodes Erlang process identifier and distributed node name, making it ideal for tracking in distributed systems as described in the README.
Supports all UUID versions from 1 to 8 as per RFC 9562, ensuring adherence to the latest standards for UUID generation.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Integrates with the quickrand dependency for cryptographically secure random generation, enhancing security for random-based UUIDs like version 4.
Maintains support for the ordered version 1 variant, aiding migration from older UUID implementations without breaking changes.
Requires calling functions like quickrand:seed/0 before using key UUID generation methods, adding setup complexity and potential for errors.
Deeply integrated with Erlang's distributed features, making it unsuitable for cross-language or non-Erlang projects, limiting its versatility.
As admitted in the README, version 7 UUID provides less time precision than versions 1 and 6, which could be a drawback for time-sensitive applications.