Skip to content

G-Core/FastEdge-sdk-rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

b774205 · Jan 14, 2025

History

71 Commits
Oct 8, 2024
Oct 8, 2024
May 8, 2024
Dec 17, 2024
Dec 17, 2024
Jan 14, 2025
Dec 17, 2024
May 8, 2024
Nov 22, 2023
May 10, 2024
Jan 14, 2025
Jan 14, 2025
Oct 13, 2023
Oct 21, 2024
May 8, 2024

Repository files navigation

FastEdge Rust SDK

This is the Rust SDK for building applications ready for deploying on FastEdge runtime. FastEdge Runtime SDK is a simple SDK that helps you to create edge cloud application using WebAssembly component model and Wasmtime runtime.

Getting Started

Please read through the documentation provided by Gcore.

Language Support

The table below summarizes the feature support for language SDKs.

Feature Rust JavaScript
Handlers
HTTP Supported Supported
APIs
Outbound HTTP Supported Supported
Env Variables Supported Supported

Rust toolchain setup:

  • rustup target add wasm32-wasip1

The FastEdge Rust SDK

Example of simple app with http entrypoint:

// lib.rs
use anyhow::Result;
use fastedge::http::{Request, Response, StatusCode};
use fastedge::body::Body;

#[fastedge::http]
fn main(req: Request<Body>) -> Result<Response<Body>> {
     Response::builder().status(StatusCode::OK).body(Body::empty())
}

The important things to note in the function above:

  • the fastedge::http macro — this marks the function as the entrypoint for the FastEdge application
  • the function signature — fn main(req: Request<Body>) -> Result<Response<Body>> — uses the HTTP objects from the popular Rust crate http