| Crates.io | wasm-runner-sdk |
| lib.rs | wasm-runner-sdk |
| version | 0.1.0 |
| created_at | 2026-01-04 21:39:36.425212+00 |
| updated_at | 2026-01-04 21:39:36.425212+00 |
| description | High-level SDK for building WASM modules for wasm-runner |
| homepage | https://codeberg.org/floriank/wasm-runner |
| repository | https://codeberg.org/floriank/wasm-runner/src/branch/main/sdk/rust |
| max_upload_size | |
| id | 2022525 |
| size | 87,530 |
High-level Rust SDK for building WASM modules that run on wasm-runner.
Note: This crate is highly experimental and the APIs may change without notice.
Add the dependency:
[dependencies]
wasm-runner-sdk = "0.1.0"
Create a module:
use wasm_runner_sdk::prelude::*;
fn hello() -> Json<serde_json::Value> {
Json(serde_json::json!({ "message": "Hello from wasm-runner!" }))
}
#[unsafe(no_mangle)]
pub extern "C" fn _start() {
Router::new().get("/", hello).run();
}
Capabilities are configured in deployment.json. You can check them at runtime:
use wasm_runner_sdk::prelude::*;
if capabilities::has(Capability::Network) {
let client = Client::new();
let _ = client.get("https://example.com").send();
}