Supported stacks

Axum hosting
on Shipped.

Keep your Axum handlers and typed extractors. Deploy the Rust service behind them and connect it to the resources your product needs.

Deploy your router and async application together

Axum applications combine routing and handlers with the Tokio and Tower ecosystem. Compile and package that application as a production service, including its runtime files. Shipped runs the server and provides its public endpoint, while your Rust code determines extraction, middleware behavior, and the responses sent to clients.

Share app state without confusing it with storage

An Axum application state value can hold database pools and other shared clients. The records themselves should live in persistent services when they must survive process replacement. Supply connection settings as secrets and connect PostgreSQL, Redis, or object storage through the libraries your project already uses.

Check failures as well as successful requests

Use staging to exercise extractor rejections, authentication middleware, and application errors with real HTTP requests. A typed handler still needs runtime integration checks. Deploy the tested service from your agent or GitHub, then follow its logs when a production request needs investigation.

A little more detail

Questions about Axum?

Does hosting Axum require replacing Tower middleware?

No. Tower layers and services remain part of your application. Include and test the middleware your router uses in the deployment build.

Will Axum application state survive a deployment?

In-memory state belongs to the running process. Keep durable records in a database or other persistent service; application state can hold the client connections used to access them.

From your workspace to the web

Ready to ship your app?

Start shipping