orleans-rust-client 0.1.0

Rust client bindings for Microsoft Orleans services via an official .NET gRPC bridge.
Documentation
# orleans-rust-client

Rust client bindings for Microsoft Orleans services via a small official .NET
bridge.

This crate provides an ergonomic, async Rust API for calling Orleans grains
without reimplementing Orleans' internal gateway protocol or serialization
runtime. A small .NET bridge hosts the official Orleans `IClusterClient` and
exposes a generic gRPC surface that this crate talks to.

```rust
use orleans_rust_client::{GrainKey, OrleansClient};

# async fn run() -> Result<(), orleans_rust_client::OrleansError> {
let client = OrleansClient::connect("http://127.0.0.1:50051").await?;

let counter = client.grain(
    "Counter.Abstractions.ICounterGrain",
    "counter",
    GrainKey::String("demo".into()),
);

let value: i64 = counter.invoke_json("Get", &()).await?;
println!("value = {value}");
# Ok(())
# }
```

See the [repository](https://github.com/MonumentalSystems/orleans-rust-client)
for the bridge, examples, and architecture.

## Features

- `json` (default) — JSON payloads via `serde_json`.
- `protobuf` — opaque protobuf payloads (caller-encoded bytes).

## License

MIT. Copyright (c) 2026 Monumental Systems, LLC.