Skip to main content

anvil_core/
lib.rs

1//! Anvil core — HTTP layer, container, configuration, and cross-cutting concerns.
2
3pub mod app;
4pub mod auth;
5pub mod cache;
6pub mod config;
7pub mod container;
8pub mod embedded;
9pub mod error;
10pub mod event;
11pub mod facade;
12pub mod mail;
13pub mod middleware;
14pub mod notification;
15pub mod queue;
16pub mod request;
17pub mod response;
18pub mod route;
19pub mod schedule;
20pub mod seeder;
21pub mod server;
22pub mod server_config;
23pub mod session;
24pub mod shutdown;
25pub mod storage;
26pub mod tracing_init;
27pub mod validation;
28pub mod view;
29
30pub use app::Application;
31pub use container::{Container, ContainerBuilder, FromContainer};
32pub use embedded::{register as register_embedded_assets, EmbeddedAsset, EmbeddedAssetFetcher};
33pub use error::{Error, Result};
34pub use middleware::{MiddlewareRegistry, NamedMiddleware};
35pub use response::{Redirect, Responder, ViewResponse};
36pub use route::{Route, RouteInfo, Router};
37pub use server::RequestId;
38
39// Re-exports for proc-macro consumers — derive macros emit code that names types
40// via `::anvil_core::...` so user crates don't need to depend on these directly.
41pub use ::async_trait;
42pub use ::axum;
43pub use ::cast_core;
44pub use ::chrono;
45pub use ::forge;
46pub use ::futures;
47pub use ::inventory;
48pub use ::serde;
49pub use ::serde_json;
50pub use ::tokio;
51pub use ::tracing;
52pub use ::uuid;
53
54#[cfg(feature = "embed-assets")]
55pub use ::rust_embed;