ids/cuid
Generating a cuid. The implementation requires a counter, so an actor is used to keep track of that state. This means before generating a cuid, an actor needs to be started and all work is done via a channel.
Slugs are also supported.
Usage
import ids/cuid
assert Ok(channel) = cuid.start()
let id = cuid.gen(channel)
let slug = cuid.slug(channel)
Types
pub opaque type Message
pub opaque type State
Functions
pub fn gen(channel: Sender(Message)) -> String
pub fn is_cuid(id: String) -> Bool
pub fn is_slug(slug: String) -> Bool
pub fn slug(channel: Sender(Message)) -> String
pub fn start() -> Result(Sender(Message), StartError)