1pub mod config;
2pub mod http;
3pub mod inertia;
4pub mod middleware;
5pub mod routing;
6pub mod server;
7
8pub use config::{
9 env, env_optional, env_required, AppConfig, Config, Environment, ServerConfig,
10};
11pub use http::{json, text, HttpResponse, Redirect, Request, Response, ResponseExt};
12pub use inertia::{InertiaConfig, InertiaContext, InertiaResponse};
13pub use middleware::{Middleware, MiddlewareFuture, MiddlewareRegistry, Next};
14pub use routing::{route, GroupBuilder, GroupRouter, RouteBuilder, Router};
15pub use server::Server;
16
17pub use async_trait::async_trait;
19
20#[doc(hidden)]
22pub use serde_json;
23
24pub use serde;
26
27pub use kit_macros::inertia_response;
29pub use kit_macros::InertiaProps;
30pub use kit_macros::redirect;
31
32#[macro_export]
33macro_rules! json_response {
34 ($($json:tt)+) => {
35 Ok($crate::HttpResponse::json($crate::serde_json::json!($($json)+)))
36 };
37}
38
39#[macro_export]
40macro_rules! text_response {
41 ($text:expr) => {
42 Ok($crate::HttpResponse::text($text))
43 };
44}