honker 0.3.2

SQLite-native task runtime: durable queues, streams, pub/sub, and scheduler. Ergonomic Rust wrapper over honker-core.
Documentation

honker-rs

Rust binding for Honker: durable queues, streams, pub/sub, and time-trigger scheduling on SQLite.

Full docs:

Install

Add the crate, and make sure the Honker SQLite extension is available at runtime.

Quick start

let db = honker::Database::open("app.db", "./libhonker_ext.dylib")?;
let q = db.queue("emails");

q.enqueue(serde_json::json!({ "to": "alice@example.com" }))?;

if let Some(job) = q.claim_one("worker-1")? {
    send_email(&job.payload);
    job.ack()?;
}

Delayed jobs use run_at / RunAt-style options in the binding API.

Recurring schedules use schedule expressions:

let sched = db.scheduler();
sched.add("fast", "emails", "@every 1s", serde_json::json!({ "kind": "tick" }))?;

Supported schedule forms:

  • 0 3 * * *
  • */2 * * * * *
  • @every 1s

For full API details, async wake behavior, streams, and SQL functions, see the main repo and docs site.