axum-core-architecture
Axum Core Architecture
Overview
Axum is an async web framework for Rust, built and maintained by the Tokio team. ALWAYS start from the founding fact: Axum implements almost nothing itself. It is a thin composition over three lower layers, tokio, hyper, and tower. Every architectural question about Axum resolves to "which layer owns this".
Core principle: routing is data and handlers are ordinary async fns. There are no
routing macros. The single macro a minimal Axum app uses is #[tokio::main], and that
macro belongs to tokio, not to Axum.
This skill covers the composition model, the request lifecycle, the no-macros design,
axum::serve, the axum-core crate boundary, and when to choose Axum. For the router
API see axum-core-router. For handler eligibility see axum-syntax-handlers. For
diagnosing handler errors see axum-errors-handler-trait.