worker-kv 0.1.1

Rust bindings to Cloudflare Worker KV Stores.
Documentation

worker-kv

Docs.rs Crates.io Unlicense

Rust bindings to Cloudflare Worker KV Stores using wasm-bindgen and js-sys.

Example

let kv = KvStore::create("Example")?;

// Insert a new entry into the kv.
kv.put("example_key", "example_value")
    .metadata(vec![1, 2, 3, 4]) // Use some arbitrary serialiazable metadata
    .execute()
    .await?;

// NOTE: kv changes can take a minute to become visible to other workers.
// Get that same metadata.
let (value, metdata) = kv.get_with_metadata::<Vec<usize>>("example_key").await?;

How do I use futures in WebAssembly?

There currently is not a way to use a Future natively from WebAssembly but with the future_to_promise function from wasm_bindgen_futures we can convert it to a standard JavaScript promise, which can be awaited in the regular JavaScript context.