Expand description
§SNID - Polyglot Sortable Identifier Protocol
SNID provides 128-bit time-ordered identifiers compatible with UUID v7, plus extended families for spatial, neural, ledger, and capability use cases.
§Basic Usage
use snid::Snid;
let id = Snid::new_fast();
let wire = id.to_wire("MAT").unwrap();
let (parsed, atom) = Snid::parse_wire(&wire).unwrap();§Extended Identifier Families
- Snid - Core 128-bit time-ordered ID (UUID v7 compatible)
- Sgid - Spatial ID with H3 geospatial encoding
- Nid - Neural ID with semantic tail for vector search
- Lid - Ledger ID with HMAC verification tail
- Wid - World/scenario ID for simulation isolation
- Xid - Edge ID for relationship identity
- Kid - Capability ID with MAC-based verification
- Eid - Ephemeral 64-bit ID
- Bid - Content-addressable ID (topology + content hash)
- Akid - Dual-part public+secret credentials (access keys)
- GrantId - Tamper-proof capability grants with expiration
- ScopeId - Logical group routing (tenant/region)
- ShardId - Fixed shard key routing
- AliasId - Human-readable aliases
- ShortId - 64-bit compact identifiers
- TraceId - W3C/OpenTelemetry compatible trace IDs
§Features
data- Enable serde serialization and JSON support
For protocol specification, see https://github.com/LastMile-Innovations/snid/blob/main/docs/SPEC.md
Structs§
- Akid
- AliasId
- Bid
- Eid
- GrantId
- Kid
- Lid
- Nid
- ScopeId
- ShardId
- ShortId
- Snid
- TraceId
- Turbo
Streamer - Reusable single-threaded generator optimized for hot loops.
- Wid
- Xid