Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
bjornmelin avatar

Rust Web Services

  • 5 installs
  • 5 repo stars
  • Updated August 5, 2026
  • bjornmelin/dev-skills

Rust-web-services is a Claude Code skill for building production Rust HTTP services with Axum, Tokio, Tower, and typed boundaries.

About

Rust-web-services is a Claude Code skill for building Rust HTTP services with Axum, Tokio, Tower, and Hyper. It covers router setup, middleware layers, request extractors, typed errors, tracing, config, graceful shutdown, SQLx data access, and background jobs. A developer uses it when building production Rust REST APIs, keeping handlers thin and treating errors, tracing, timeouts, and shutdown as part of the feature.

  • Builds Rust HTTP services with Axum, Tower, Tokio, and Hyper
  • Designs typed boundaries, tracing, timeouts, and graceful shutdown as first-class
  • Covers SQLx data access, background jobs, and service integration tests

Rust Web Services by the numbers

  • 5 all-time installs (skills.sh)
  • Ranked #93 of 121 Rust skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

rust-web-services capabilities & compatibility

Free; uses the Rust toolchain and cargo.

Capabilities
rust web service · api development · database access
Works with
postgres
Use cases
api development · database · testing
Pricing
Free
From the docs

What rust-web-services says it does

Build Rust HTTP services with explicit state, typed boundaries, observable behavior, and production-grade runtime contracts.
SKILL.md
Prefer `axum` plus `tower` layers for new HTTP services unless the repo already standardizes on another framework.
SKILL.md
Treat errors, tracing, timeouts, request size limits, and shutdown as part of the feature, not afterthoughts.
SKILL.md
npx skills add https://github.com/bjornmelin/dev-skills --skill rust-web-services

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs5
repo stars5
Last updatedAugust 5, 2026
Repositorybjornmelin/dev-skills

What it does

Build production Rust HTTP APIs with Axum/Tower, typed boundaries, tracing, and graceful shutdown.

Who is it for?

Axum/Tower HTTP APIs, middleware layers, typed errors, tracing, config, graceful shutdown, and SQLx-backed services.

Skip if: Non-web Rust work like CLIs, TUIs, or desktop apps, which route to other Rust specialists.

When should I use this skill?

Building Axum/Tokio/Tower REST APIs, middleware, extractors, typed errors, tracing, or background jobs.

What you get

Rust HTTP services with explicit state, typed boundaries, observable behavior, and production-grade runtime contracts.

  • Axum router and middleware setup
  • typed error response mapping
  • tracing and graceful shutdown

By the numbers

  • 5-point operating model
  • 3 reference guides

Files

SKILL.mdMarkdownGitHub ↗

Rust Web Services

Build Rust HTTP services with explicit state, typed boundaries, observable behavior, and production-grade runtime contracts.

Operating Model

1. Read the existing service shape first: router setup, app state, middleware layers, config, database access, tests, deployment scripts, and observability. 2. Prefer axum plus tower layers for new HTTP services unless the repo already standardizes on another framework. 3. Keep handlers thin. Extract inputs, call domain/service code, map results into HTTP responses. 4. Make app state explicit and clone-cheap. Avoid hidden globals and ad hoc connection creation per request. 5. Treat errors, tracing, timeouts, request size limits, and shutdown as part of the feature, not afterthoughts.

Reference Map

  • references/axum-tower-architecture.md for router structure, state, extractors, middleware, errors, and versioned APIs.
  • references/runtime-config-data.md for Tokio runtime concerns, config, database access, background jobs, and graceful shutdown.
  • references/testing-observability.md for integration tests, tracing, metrics, contract tests, and production readiness.

Defaults

  • Use tokio with only required features unless the repo uses full feature sets consistently.
  • Use serde DTOs at HTTP boundaries and domain types internally.
  • Use thiserror for domain errors and typed response mapping at the HTTP edge.
  • Use tracing/tracing-subscriber with structured spans and request IDs.
  • Use sqlx for database-backed services when compile-time query checking and async pooling are useful.

Verification

For service changes:

cargo fmt --all --check
cargo test --all-targets
cargo clippy --all-targets --all-features -- -D warnings

Add integration tests for new routes, error status mapping, auth/authorization branches, config parsing, database behavior, and graceful shutdown or background work when touched.

Related skills

FAQ

What framework does rust-web-services prefer?

Axum plus Tower layers for new HTTP services unless the repo already standardizes on another framework.

How should handlers be structured?

Keep handlers thin: extract inputs, call domain/service code, and map results into HTTP responses.

Rustbackendtestingintegrations

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.