41 breaking releases

new 0.53.0 Mar 12, 2025
0.51.0 Jan 10, 2025
0.49.0 Nov 12, 2024
0.47.0 Jul 23, 2024
0.13.0 Mar 27, 2023

#917 in HTTP server

Download history 27/week @ 2024-11-14 7/week @ 2024-11-21 7/week @ 2024-11-28 10/week @ 2024-12-05 31/week @ 2024-12-12 84/week @ 2025-01-02 176/week @ 2025-01-09 3/week @ 2025-01-16 73/week @ 2025-01-30 26/week @ 2025-02-06 320/week @ 2025-02-13 4/week @ 2025-02-27

372 downloads per month

Apache-2.0

64KB
866 lines

Shuttle service integration for the Thruster web framework

Example

use thruster::{
    context::basic_hyper_context::{generate_context, BasicHyperContext as Ctx, HyperRequest},
    m, middleware_fn, App, HyperServer, MiddlewareNext, MiddlewareResult, ThrusterServer,
};

#[middleware_fn]
async fn hello(mut context: Ctx, _next: MiddlewareNext<Ctx>) -> MiddlewareResult<Ctx> {
    context.body("Hello, World!");
    Ok(context)
}

#[shuttle_runtime::main]
async fn thruster() -> shuttle_thruster::ShuttleThruster<HyperServer<Ctx, ()>> {
    let server = HyperServer::new(
        App::<HyperRequest, Ctx, ()>::create(generate_context, ()).get("/", m![hello]),
    );

    Ok(server.into())
}

Dependencies

~16–28MB
~402K SLoC