# uuid

Version 4.x.x is a complete redesign of the underlying setup, but tries to be API compatible or similar to 3.x.

UuidValue is still Experimental and the API for it is in flux, please pay attention to changelogs and versions.

Simple, fast generation of RFC4122 and RFC9562 UUIDs.

Features:

- Generate RFC4122 version 1, version 4, or version 5 UUIDs
- Supports RFC9562 version 6, version 7, and version 8
- Runs in web, server, and flutter
- Cryptographically strong random number generation on all platforms
- Documentation

## Getting Started

### Instructions

1. Open a command line and cd to your projects root folder
2. In your pubspec, add an entry for dart-uuid to your dependencies (example below)
3. pub install
4. If you wish to run tests, go into packages/dart-uuid/ and run 'dart test/uuid_test.dart'

### Pubspec

    dependencies:
      uuid: ^4.4.2

    import 'package:uuid/uuid.dart';

    var uuid = Uuid();

Then create some ids ...

    // Generate a v1 (time-based) id
    uuid.v1(); // -> '6c84fb90-12c4-11e1-840d-7b25c5ee775a'

    // Generate a v4 (random) id
    uuid.v4(); // -> '110ec58a-a0f2-4ac4-8393-c866d813b8d1'

    // Generate a v5 (namespace-name-sha1-based) id
    uuid.v5(Uuid.NAMESPACE_URL, 'www.google.com'); // -> 'c74a196f-f19d-5ea9-bffd-a2742432fc9c'

## Documentation

For documentation, please visit the Documentation page. Examples are included for most functions and classes.

For more complex examples and other usages, please look at the tests.

## Release notes

See CHANGELOG

## Libraries

constants
data
enums
parsing
rng
uuid
  Generates UUID v1, v4, v5, v6, v7, v8 following RFC4122 standard.
uuid_value
v1
v4
v5
v6
v7
v8
v8generic
validation