Code Explainers
Axum code explainers
rust
use std::time::Instant; use axum::{ body::Body,
Prometheus request metrics in Axum
middleware
observability
prometheus
Intermediate
7 steps
rust
use axum::{ async_trait, body::Bytes, extract::FromRequest,
A strict JSON extractor in Axum
extractors
traits
content-negotiation
Advanced
7 steps
rust
use axum::{ async_trait, extract::{FromRequestParts, State}, http::{request::Parts, StatusCode},
Idempotent payments with an Axum extractor
idempotency
extractors
shared-state
Intermediate
8 steps
rust
use std::time::Duration; use axum::{ extract::State,
Rate-limiting an expensive Axum route with tower
middleware
concurrency-limiting
shared-state
Intermediate
9 steps
rust
use axum::{ extract::State, http::{header, HeaderMap, StatusCode}, response::{IntoResponse, Response},
Conditional GET caching in Axum
http-caching
conditional-requests
extractors
Intermediate
7 steps
rust
use axum::{ routing::get, Json, Router, };
Response compression in Axum with tower-http
middleware
compression
http
Intermediate
6 steps
rust
use axum::{extract::State, http::StatusCode, response::IntoResponse, Json}; use chrono::{Duration, Utc}; use serde::{Deserialize, Serialize}; use std::{collections::HashMap, sync::Arc};
Refresh token rotation in Axum
authentication
token-rotation
reuse-detection
Advanced
9 steps
rust
use axum::{ extract::{FromRef, FromRequestParts}, http::{request::Parts, StatusCode}, response::{IntoResponse, Response},
A custom API-key extractor in Axum
authentication
extractors
trait-implementation
Advanced
8 steps
rust
use axum::{ async_trait, extract::{FromRequestParts, State}, http::{header, request::Parts, StatusCode},
Custom auth extractors in Axum
extractors
authentication
error-handling
Intermediate
9 steps
rust
use std::time::Duration; use axum::{ body::Body,
Structured request tracing in Axum
middleware
observability
tracing
Intermediate
7 steps
rust
use axum::{extract::{Path, State}, http::StatusCode, Json}; use serde::Serialize; use std::sync::Arc;
Concurrent dashboard aggregation in Axum
concurrency
error-handling
graceful-degradation
Intermediate
7 steps
rust
use axum::{ extract::{Path, State}, http::{header, HeaderMap, StatusCode}, response::{IntoResponse, Response},
Optimistic concurrency with ETags in Axum
optimistic-concurrency
etag
http-headers
Intermediate
8 steps
rust
use axum::{ async_trait, extract::{rejection::JsonRejection, FromRequest, Request}, http::StatusCode,
A validating JSON extractor in Axum
extractors
validation
error-handling
Intermediate
7 steps
rust
use axum::{extract::{Query, State}, http::StatusCode, Json}; use base64::{engine::general_purpose::URL_SAFE_NO_PAD, Engine}; use serde::{Deserialize, Serialize}; use sqlx::PgPool;
Cursor pagination in an Axum handler
cursor-pagination
keyset-pagination
base64
Advanced
10 steps
rust
use std::sync::Arc; use axum::{ extract::State,
Offloading work with a channel in Axum
background-jobs
message-passing
shared-state
Intermediate
9 steps
rust
use std::time::Duration; use axum::{extract::State, http::StatusCode, response::IntoResponse, Json}; use serde::Serialize;
A timeout-guarded health check in Axum
health-check
timeout
error-handling
Intermediate
6 steps
rust
use std::sync::Arc; use axum::{ body::Body, extract::{Extension, State},
Passing per-request context through Axum middleware
middleware
request-context
dependency-injection
Intermediate
8 steps
rust
use axum::{ extract::Path, http::{header::ACCEPT, HeaderMap, StatusCode}, response::{Html, IntoResponse, Json, Response},
Content negotiation in an Axum handler
content-negotiation
http-headers
serialization
Intermediate
8 steps