#axum #web #multipart-form #multipart

aide-axum-typed-multipart

Type safe multipart/form-data handling for axum and aide

1 unstable release

0.13.0 Mar 6, 2024

#29 in #multipart-form

Download history 134/week @ 2024-08-30 50/week @ 2024-09-06 75/week @ 2024-09-13 80/week @ 2024-09-20 22/week @ 2024-09-27 20/week @ 2024-10-04 27/week @ 2024-10-11 13/week @ 2024-10-18 3/week @ 2024-10-25 30/week @ 2024-11-01 26/week @ 2024-11-08 67/week @ 2024-11-15 103/week @ 2024-11-22 68/week @ 2024-11-29 38/week @ 2024-12-06 66/week @ 2024-12-13

291 downloads per month

MIT/Apache

3.5MB
7K SLoC

Rust 5K SLoC // 0.0% comments JavaScript 1.5K SLoC // 0.0% comments

aide-axum-typed-multipart

Wrapper around axum_typed_multipart to generate documentation for multipart requests.

Example

use aide_axum_typed_multipart::{FieldData, TypedMultipart};
use axum::{body::Bytes, http::StatusCode};
use axum_typed_multipart::TryFromMultipart;
use schemars::JsonSchema;

#[derive(TryFromMultipart, JsonSchema)]
struct MyMultipart {
    title: String,
    description: String,
    #[form_data(limit = "unlimited")]
    image: FieldData<Bytes>,
}

async fn post_hello_world(TypedMultipart<MyMultipart>) -> StatusCode {
    // do something
    return StatusCode::OK;
}

Dependencies

~13–24MB
~418K SLoC