Crate lmrc_http_common

Crate lmrc_http_common 

Source
Expand description

§lmrc-http-common

Common HTTP utilities and patterns for LMRC Stack applications.

This library provides reusable components for building Axum-based HTTP services:

  • Standard error types and response wrappers
  • Reusable middleware (CORS, logging, tracing)
  • Authentication utilities (JWT, session management, password hashing)
  • Configuration patterns

§Features

  • auth (default): Enable authentication utilities (JWT, bcrypt, sessions)
  • validation (default): Enable request validation helpers

§Example

use lmrc_http_common::{
    error::{HttpError, HttpResult},
    response::SuccessResponse,
};
use axum::{Json, response::IntoResponse};

async fn handler() -> HttpResult<impl IntoResponse> {
    let data = vec!["item1", "item2"];
    Ok(SuccessResponse::new(data))
}

Re-exports§

pub use error::ErrorResponse;
pub use error::HttpError;
pub use error::HttpResult;
pub use response::CreatedResponse;
pub use response::EmptyResponse;
pub use response::PaginatedResponse;
pub use response::PaginationMeta;
pub use response::SuccessResponse;

Modules§

auth
Authentication utilities for HTTP services
error
Common error types for HTTP services
middleware
Reusable middleware for Axum applications
response
Standard HTTP response wrappers