Build Status

A crate for quickly generating unique IDs with guaranteed properties. This library is completely unrelated to twitter's snowflake library.

This crate currently includes guaranteed process unique IDs but may include new ID types in the future.

API Docs:


Add this to your Cargo.toml:

snowflake = "1.2"

and this to your create root:

extern create snowflake;

To add support for serialization and deserialization using serde, add this to your Cargo.toml:

snowflake = { version = "1.2", features = ["serde_support"] }

Warning: there is a risk of non-unique IDs if (de)serialization is used to persist IDs, i.e. reading and writing IDs to and from a file.


Licensed under either of

at your option.


Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.