![Crates.io Version](https://img.shields.io/crates/v/superflake?style=flat&colorA=000000&colorB=000000) ![Crates.io License](https://img.shields.io/crates/l/superflake?style=flat&colorA=000000&colorB=000000) ![Foundry Industries](https://img.shields.io/badge/enginereed%20by%20Foundry%20Industries-000000) Superflake is an ultra-safe identification technology inspired by Snowflake IDs. ## Features - **Simple.** Minimal and beautiful IDs that are unique. - **Customizable.** You can customize the default epoch and the node ID. - **Robust.** Superflake is built in Rust, the world's most loved programming language. - **Performant.** A Superflake ID is only 8 bytes long, and it is a number, just like Snowflakes. ## Structure A Superflake is generated by concatenating: - a 42-bit timestamp, - a 10-bit node ID, and - a 12-bit incremental number. ## Usage ```rs use superflake::Superflake; let mut superflake = Superflake::new_with_node_id(1023, None); // Specify a custom epoch if you want let id = superflake.gen(); // 392366571697205248 // Decode the Superflake let decoded_id = superflake.decode(id); ```