vyuh 0.2.6

Vyuh web framework for Axum and SQLx with handler-first APIs
Documentation
mod methods;
pub mod middleware;
pub mod multipart;
mod types;

#[cfg(feature = "cors")]
pub mod builtin;

// Response types
pub use axum::response::{AppendHeaders, Html, IntoResponse, NoContent, Redirect, Response};

// Routing helpers
pub use axum::routing::{
    Router as AxumRouter, any, delete, get, method_routing::MethodRouter, patch, post, put,
};

// Core extractors
pub use axum::extract::{
    Extension, FromRequest, FromRequestParts, MatchedPath, OriginalUri, RawQuery, Request, State,
};

// Extra extractors
pub use axum_extra::extract::TypedHeader;

// HTTP primitives
pub use axum::http::{HeaderMap, HeaderName, Method as HttpMethod, StatusCode, Uri};

// Body types
pub use axum::body::Body;

// Local types
pub use crate::Data;
pub use crate::validation::Valid;
pub use methods::{MethodIter, Methods};
pub use middleware::{Middleware, RawLayer, layer_from};
pub use multipart::{JsonPart, MultipartForm, MultipartMap, UploadedFile, UploadedText};
pub use types::{BodyBytes, Form, Json, JsonStr, Path, Query, RouteConf};

/// Explicit Axum escape hatch for applications that need raw Axum extractors.
pub mod axum_extractors {
    pub use axum::Json;
    pub use axum::extract::{
        Extension, FromRequest, FromRequestParts, MatchedPath, OriginalUri, Path, RawQuery,
        Request, State,
    };
    pub use axum_extra::extract::{Form, Multipart, Query, TypedHeader};
}

#[cfg(feature = "cors")]
pub use builtin::CorsMiddleware;