Dapr SDK for Rust - Alpha
Go to file
mikeee 5eee0ceca8
fix actor validation
Signed-off-by: mikeee <hey@mike.ee>
2024-02-20 15:01:39 +00:00
.github/workflows add actor example validation 2024-02-19 22:23:05 +00:00
dapr/proto Updating protos for Dapr 1.12 (#102) 2023-09-11 13:14:14 -07:00
examples fix actor validation 2024-02-20 15:01:39 +00:00
macros Initial implementation of actor runtime (#99) 2024-01-09 10:31:23 -08:00
src Initial implementation of actor runtime (#99) 2024-01-09 10:31:23 -08:00
.gitignore pubsub example validation 2024-02-19 21:26:00 +00:00
CONTRIBUTING.md Add DCO requirements and updated code of conduct (#67) 2022-01-20 14:46:39 -08:00
Cargo.toml Initial implementation of actor runtime (#99) 2024-01-09 10:31:23 -08:00
LICENSE update license (#66) 2022-01-19 13:30:31 -08:00
README.md Updating protos for Dapr 1.12 (#102) 2023-09-11 13:14:14 -07:00
build.rs Invoke examples (#85) 2023-02-03 17:45:49 -08:00
rustfmt.toml Invoke examples (#85) 2023-02-03 17:45:49 -08:00
update-protos.sh Set `update-protos.sh` hashbang to `#!/usr/bin/env bash` (#95) 2023-05-31 10:15:25 -05:00

README.md

Dapr SDK for Rust

Crates.io Build Status License: Apache 2.0 FOSSA Status

⚠ Work in Progress ⚠

Dapr is a portable, event-driven, serverless runtime for building distributed applications across cloud and edge.

Prerequisites

Ensure you have Rust version 1.40 or higher installed. If not, install Rust here.

How to use

Add the following to your Cargo.toml file:

[dependencies]
dapr = "0.13.0"

Here's a basic example to create a client:

use dapr;

async fn main() -> Result<(), Box<dyn std::error::Error>> {
    // Get the Dapr port and create a connection
    let port: u16 = std::env::var("DAPR_GRPC_PORT")?.parse()?;
    let addr = format!("https://127.0.0.1:{}", port);

    // Create the client
    let mut client = dapr::Client::<dapr::client::TonicClient>::connect(addr).await?;

Explore more examples

Browse through more examples to understand the SDK better: View examples

Building

To build the SDK run:

cargo build

Note: The protobuf client generation is built into cargo build process so updating the proto files under dapr/ is enough to update the protobuf client.

Updating .proto files from upstream Dapr

To fetch the latest .proto files from Dapr execute the script update-protos.sh:

./update-protos.sh

By default, the script fetches the latest proto updates from the master branch of the Dapr repository. If you need to choose a specific release or version, use the -v flag:

./update-protos.sh -v v1.12.0