[package]
edition = "2021"
rust-version = "1.75"
name = "id-forge"
version = "0.9.0"
authors = ["James Gober <me@jamesgober.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Typed, high-performance unique ID generation for Rust. UUID v4/v7, ULID, Snowflake, NanoID, and custom epoch-based schemes in one zero-dependency library. Monotonic, distributed-safe, sortable variants."
homepage = "https://github.com/jamesgober/id-forge"
documentation = "https://docs.rs/id-forge"
readme = "README.md"
keywords = [
"uuid",
"ulid",
"snowflake",
"nanoid",
"id",
]
categories = [
"algorithms",
"data-structures",
"no-std",
]
license = "Apache-2.0 OR MIT"
repository = "https://github.com/jamesgober/id-forge"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
default = [
"std",
"uuid",
"ulid",
"snowflake",
"nanoid",
]
nanoid = ["std"]
snowflake = ["std"]
std = []
ulid = ["std"]
uuid = ["std"]
[lib]
name = "id_forge"
path = "src/lib.rs"
[[example]]
name = "basic"
path = "examples/basic.rs"
required-features = [
"uuid",
"ulid",
"snowflake",
"nanoid",
]
[[test]]
name = "smoke"
path = "tests/smoke.rs"
required-features = [
"uuid",
"ulid",
"snowflake",
"nanoid",
]
[dependencies]
[dev-dependencies]
[profile.release]
opt-level = 3
lto = "thin"