Skip to content
/ UUID Public

A modern, high-performance UUID library for .NET ecosystem. Features time-ordered identifiers, cryptographic security, multiple encoding formats (Base32/Base64), and seamless Guid compatibility. Thread-safe, cross-platform, and perfect for distributed systems. πŸš€

License

Notifications You must be signed in to change notification settings

Taiizor/UUID

Repository files navigation

Logo

Dot-Net-Framework-Version Dot-Net-Standard-Version Dot-Net-Version C-Sharp-Version IDE-Version NuGet-Version NuGet-Download Stack Overflow

.NET CodeQL .NET Desktop

Discord-Server

Welcome to UUID

UUID is a modern and efficient unique identifier generator for .NET ecosystem. This high-performance library is designed for modern distributed systems, providing thread-safe operations and time-ordered identifiers with enhanced security features.

Contributors

Thanks goes to these wonderful people (emoji key):

Taiizor
Taiizor

πŸ’» πŸ€”

This project follows the all contributors specification. Contributions of any kind welcome!

Backers

Vegalya
Vegalya

πŸ–‹
Soferity
Soferity

πŸ–‹

Platform support

UUID works on .NET Framework, .NET Standard, .NET Core and .NET.

.NET implementation Version support
.NET and .NET Core 2.0, 2.1, 2.2, 3.0, 3.1, 5.0, 6.0, 7.0, 8.0, 9.0
.NET Framework 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Mono 5.4, 6.4
Xamarin.iOS 10.14, 12.16
Xamarin.Mac 3.8, 5.16
Xamarin.Android 8.0, 10.0
Universal Windows Platform 10.0.16299, TBD
Unity 2018.1

Binaries for all platforms are built from a single Visual Studio Project. You will need the latset Visual Studio to build or contribute to UUID.

Features

  • High Performance & Thread Safety

    • Thread-safe operations optimized for performance
    • Thread-local secure random generation
    • Efficient memory usage with 16-byte format
  • Time-Based Ordering

    • Natural sorting based on creation time
    • Monotonic timestamps for consistent ordering
    • Perfect for distributed systems and databases
  • Security

    • Cryptographically secure random generation
    • Enhanced protection against prediction and collision
  • Multiple Format Support

    • Base32 encoding for URL-friendly strings
    • Base64 encoding for compact representation
    • Guid compatibility
    • Efficient string parsing and formatting
  • Rich API

    • Implicit/explicit conversion operators
    • Comparison and equality operations
    • Comprehensive test coverage
    • Cross-platform compatibility

Getting started

UUID is distributed via Microsofts package manager NuGet. We refer to this page for detailed descriptions on how to get started/use NuGet. Here is a link to the UUID NuGet package. You can grab a copy of the library on NuGet by running:

By Package Manager (PM):

Install-Package UUID

By .NET CLI:

dotnet add package UUID

Find more, including a runnable example application, under the Getting Started topic in the documentation.

Documentation and FAQ

To learn more about UUID, check out the documentation - you'll find information there on the most common scenarios. If UUID isn't working the way you expect, you may find the troubleshooting guide useful.

UUID has an active and helpful community who are happy to help point you in the right direction or work through any issues you might encounter. You can get in touch via:

We welcome bug reports and suggestions through our issue tracker here on GitHub.

Contributing

Would you like to help make UUID even better? We keep a list of issues that are approachable for newcomers under the solved label (accessible only when logged into GitHub). Before starting work on a pull request, we suggest commenting on, or raising, an issue on the issue tracker so that we can help and coordinate efforts.

When contributing please keep in mind our Code of Conduct.

UUID is copyright Β© 2024-2025 UUID Contributors - Provided under the MIT License.

About

A modern, high-performance UUID library for .NET ecosystem. Features time-ordered identifiers, cryptographic security, multiple encoding formats (Base32/Base64), and seamless Guid compatibility. Thread-safe, cross-platform, and perfect for distributed systems. πŸš€

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks