Skip to content

Install

Prerequisites

Before installing Shizuku, ensure you have:

  • Rust toolchain installed (latest stable version)
  • Basic understanding of Rust (see Before You Start)
  • A running NATS server (see What is NATS)

Adding Shizuku to Your Project

Add Shizuku to your project’s Cargo.toml:

Cargo.toml
[dependencies]
shizuku = "0.0.2-alpha.2"

Optional Features

Shizuku provides several optional features that you can enable:

Cargo.toml
[dependencies]
shizuku = { version = "0.0.2-alpha.2", features = ["json", "protobuf"] }

Available features:

  • json: Enables JSON serialization support
  • protobuf: Enables Protocol Buffers serialization support

Quick Start

  1. Create a new Rust project:
Terminal window
cargo new my-shizuku-service
cd my-shizuku-service
  1. Add Shizuku to your dependencies as shown above

  2. Create a basic service:

use shizuku::service_rpc::FinalNatsProcessor;
use async_nats::Message;
use bytes::Bytes;
struct EchoService;
impl FinalNatsProcessor<Message, Result<Bytes, Error>> for EchoService {
async fn process(_state: Arc<Self>, msg: Message) -> Result<Bytes, Error> {
Ok(msg.payload.into())
}
}

Next Steps