Skip to content

Repository files navigation

Axum Web Tools

General purpose tools for the axum web framework.

axum-webtools is a Cargo workspace bundling a helper library and a set of operational CLI tools. Each module has its own README with full documentation — see the links below.

Modules

Module Crate Description
tools axum-webtools Axum helpers: SQLx transactions (with_tx), JWT auth (Claims), consistent HTTP responses (HttpError, ok).
pgsql-migrate axum-webtools-pgsql-migrate PostgreSQL migration CLI: up/down/status, baseline, safe mode, backup & restore, split-statements, and more.
dlq-redrive axum-webtools-dlq-redrive Kafka Dead Letter Queue redrive CLI: reprocess failed messages, route old messages to poison topics, inspect lag.
macros axum-webtools-macros Procedural macros supporting the axum-webtools library (e.g. #[endpoint]).

Docker images

axum-webtools images are available on Docker Hub:

Crates

axum-webtools is a collection of crates that provide various tools and utilities for the axum web framework.

Quick start

Library (axum-webtools)

Add the helper library to your axum project — see tools/README.md for a full example.

[dependencies]
axum = { version = "xxx" }
axum-webtools = { version = "xxx" }
axum-webtools-macros = { version = "xxx" }
sqlx = { version = "xxxx" }

PostgreSQL migrations (pgsql-migrate)

cargo install axum-webtools-pgsql-migrate
pgsql-migrate up -d "postgres://user:pass@localhost/db"

Full documentation: pgsql-migrate/README.md.

Kafka DLQ redrive (dlq-redrive)

cargo install axum-webtools-dlq-redrive
dlq-redrive status -b "localhost:9092" -s "my-dlq-topic" -g "dlq-consumer-group"

Full documentation: dlq-redrive/README.md.

About

General purpose tools for axum web framework.

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages