mod app;
mod console;
mod live_reload;
#[cfg(feature = "view")]
mod view;
pub use app::App;
pub use console::Console;
#[cfg(feature = "ai")]
pub use rustlavel_ai as ai;
#[cfg(feature = "auth")]
pub use rustlavel_auth as auth;
#[cfg(feature = "cache")]
pub use rustlavel_cache as cache;
#[cfg(feature = "client")]
pub use rustlavel_client as client;
#[cfg(feature = "db")]
pub use rustlavel_db as db;
#[cfg(feature = "db")]
pub use rustlavel_db::Connections;
#[cfg(feature = "debugbar")]
pub use rustlavel_debugbar as debugbar;
#[cfg(feature = "debugbar")]
pub use rustlavel_debugbar::DebugBar;
#[cfg(feature = "gateway")]
pub use rustlavel_gateway as gateway;
#[cfg(feature = "gateway")]
pub use rustlavel_gateway::{Gateway, Upstream};
#[cfg(feature = "discovery")]
pub use rustlavel_discovery as discovery;
#[cfg(feature = "payment")]
pub use rustlavel_payment as payment;
#[cfg(feature = "ledger")]
pub use rustlavel_ledger as ledger;
#[cfg(feature = "ledger")]
pub use rustlavel_ledger::Ledger;
#[cfg(feature = "billing")]
pub use rustlavel_billing as billing;
#[cfg(feature = "billing")]
pub use rustlavel_billing::Billing;
#[cfg(feature = "chart")]
pub use rustlavel_chart as chart;
#[cfg(feature = "chart")]
pub use rustlavel_chart::{Chart, Charts, Series};
#[cfg(feature = "discovery")]
pub use rustlavel_discovery::{Discovery, Instance, Peers, Registrar, Registry, RegistryServer};
#[cfg(feature = "i18n")]
pub use rustlavel_i18n as i18n;
#[cfg(feature = "vault")]
pub use rustlavel_vault as vault;
#[cfg(feature = "ldap")]
pub use rustlavel_ldap as ldap;
#[cfg(feature = "oauth")]
pub use rustlavel_oauth as oauth;
#[cfg(feature = "oauth-provider")]
pub use rustlavel_oauth_provider as oauth_provider;
#[cfg(feature = "mail")]
pub use rustlavel_mail as mail;
#[cfg(feature = "mail")]
pub use rustlavel_mail::Mail;
#[cfg(feature = "mcp")]
pub use rustlavel_mcp as mcp;
#[cfg(feature = "metrics")]
pub use rustlavel_metrics as metrics;
#[cfg(feature = "model-cache")]
pub use rustlavel_model_cache as model_cache;
#[cfg(feature = "metrics")]
pub use rustlavel_metrics::Metrics;
#[cfg(feature = "otel")]
pub use rustlavel_otel as otel;
#[cfg(feature = "otel")]
pub use rustlavel_otel::OpenTelemetry;
#[cfg(feature = "search")]
pub use rustlavel_search as search;
#[cfg(feature = "search")]
pub use rustlavel_search::LogShipping;
#[cfg(feature = "webauthn")]
pub use rustlavel_webauthn as webauthn;
#[cfg(feature = "openapi")]
pub use rustlavel_openapi as openapi;
#[cfg(feature = "audit")]
pub use rustlavel_audit as audit;
#[cfg(feature = "flags")]
pub use rustlavel_flags as flags;
#[cfg(feature = "rbac")]
pub use rustlavel_rbac as rbac;
#[cfg(feature = "queue")]
pub use rustlavel_queue as queue;
#[cfg(feature = "storage")]
pub use rustlavel_storage as storage;
#[cfg(feature = "telescope")]
pub use rustlavel_telescope as telescope;
#[cfg(feature = "telescope")]
pub use rustlavel_telescope::Telescope;
#[cfg(feature = "validation")]
pub use rustlavel_validation as validation;
#[cfg(feature = "view")]
pub use rustlavel_view as views;
#[cfg(feature = "ws")]
pub use rustlavel_ws as ws;
#[cfg(feature = "view")]
pub use view::{Views, engine_from_config, engine_with_routes};
pub use tokio;
pub use rustlavel_macros::{main, test};
pub use rustlavel_core::{Config, Context, Error, Event, Json, Result, config, env, events, json, log};
pub use rustlavel_http::{
BoxFuture, Cookie, Files, Handler, Headers, Method, Middleware, NamedRoutes, Next, Plugin, SseEvent,
Request, Resource,
Response, Router, SameSite, Setup, Status, TestClient, TestResponse, cookie, error_page,
middleware, request, response, router, server, status, testing, url,
};
pub mod prelude {
pub use crate::App;
pub use rustlavel_core::{Config, Context, Error, Json, Result};
pub use rustlavel_http::{
BodyLimit, BoxFuture, Compress, Cookie, Cors, ETag, Health, IntoResponse, JsonResource,
Method, Middleware, Next, Request, RequestId, ResourceResponse, Response, Router, Status,
Timeout, TrustProxies, VersionHeader, attributes,
};
pub use rustlavel_core::{debug, error, info, warn};
#[cfg(feature = "ai")]
pub use rustlavel_ai::Ai;
#[cfg(feature = "auth")]
pub use rustlavel_auth::prelude::*;
#[cfg(feature = "cache")]
pub use rustlavel_cache::prelude::*;
#[cfg(feature = "client")]
pub use rustlavel_client::{CircuitBreaker, Client};
#[cfg(feature = "debugbar")]
pub use crate::DebugBar;
#[cfg(feature = "metrics")]
pub use crate::Metrics;
#[cfg(feature = "otel")]
pub use crate::OpenTelemetry;
#[cfg(feature = "search")]
pub use crate::LogShipping;
#[cfg(feature = "telescope")]
pub use crate::Telescope;
#[cfg(feature = "db")]
pub use rustlavel_db::prelude::*;
#[cfg(feature = "i18n")]
pub use rustlavel_i18n::Translator;
#[cfg(feature = "audit")]
pub use rustlavel_audit::prelude::*;
#[cfg(feature = "flags")]
pub use rustlavel_flags::prelude::*;
#[cfg(feature = "model-cache")]
pub use rustlavel_model_cache::prelude::*;
#[cfg(feature = "rbac")]
pub use rustlavel_rbac::prelude::*;
#[cfg(feature = "queue")]
pub use rustlavel_queue::prelude::*;
#[cfg(feature = "storage")]
pub use rustlavel_storage::{Storage, Visibility};
#[cfg(feature = "validation")]
pub use rustlavel_validation::{Errors, Rule, Validated, validate};
#[cfg(feature = "view")]
pub use crate::Views;
#[cfg(feature = "view")]
pub use rustlavel_view::{Context as ViewContext, Engine};
#[cfg(feature = "ws")]
pub use rustlavel_ws::{Broadcaster, Message as WsMessage, WebSocket, websocket};
}
pub mod test_prelude {
pub use crate::prelude::*;
pub use rustlavel_http::{TestClient, TestResponse};
}