FalkorDB-rs Dev Log

Field notes from building the FalkorDB Rust client — the good decisions, the embarrassing ones, and why we keep betting on Rust for a graph database.

Every code sample and every benchmark on this site is a real file that compiles in CI. If it's on the page, it built. (More on that trick in the posts.)

All posts

  1. Read your writes: opt-in replica routing via Sentinel
    Part 8 of 8

    Routing read-only queries to replicas is a correctness decision, not just a throughput knob. Here's why we made it opt-in, per-client and per-query.

  2. Production-grade: retries, tracing spans, metrics, and error hints
    Part 7 of 8

    Opt-in retries that never duplicate a write, OpenTelemetry-aligned tracing with a privacy-safe query fingerprint, bounded metrics, and errors that tell you how to fix them.

  3. Typed mapping with serde, and temporal values that do real math
    Part 6 of 8

    Deserialize rows straight into your own structs with serde, and decode FalkorDB date/time/duration values into types with a checked, type-safe algebra.

  4. Batteries included: an embedded FalkorDB you can cargo run
    Part 5 of 8

    Spin up a real FalkorDB from your Rust process — auto-provisioned module, cached or downloaded, or embedded at build time for fully offline runtime.

  5. Async all the way down: streaming results and connection multiplexing
    Part 4 of 8

    Result sets that are Streams you compose with the futures toolbox, and a multiplexed connection strategy — with a real pooled-vs-multiplexed benchmark.

  6. Rows that don't lie: header-aware, fallible result iteration
    Part 3 of 8

    A result API where every row is a FalkorResult<Row>, columns are read by name, and a value that fails to parse is an Err you can handle — not a panic.

  7. Stop hand-quoting Cypher: type-safe, injection-proof parameters
    Part 2 of 8

    Bound query parameters that take real Rust values, encode them correctly, and make Cypher injection a compile-time non-event.

  8. Why I keep betting on Rust for a graph database client
    Part 1 of 8

    Kicking off a dev log about the FalkorDB Rust client — the vision, the Rust bet, and a promise: every snippet on this blog compiles in CI.