// the find
launchbadge/realworld-axum-sqlx
A Rust implementation of the Realworld demo app spec using Axum and SQLx.
A Rust implementation of the Realworld demo spec, built on Axum, SQLx and PostgreSQL. It doubles as a written opinion from one Launchbadge developer on the spec and on backend project layout, so the commentary matters as much as the code. Aimed at Rust developers who want a worked example of a small API to read, not a template to copy as-is.
The migrations directory is the strongest part: the SQL files explain schema decisions in comments and check them against the places where the Realworld spec forces awkward choices, which is rarer than it should be. The HTTP layer is split by resource (articles with listing and comments, profiles, users) with shared extractor, error and types modules, so it is easy to find where a given endpoint lives. The README says plainly that it reflects one person's opinions and separates those from house policy, which makes specific decisions easy to argue with. A committed Cargo.lock and a GitHub Actions workflow mean the build is pinned and CI runs on push.
The last push was 30 December 2023. Axum and SQLx have both shipped breaking releases since then, so expect to port the code before it builds against current crates, and check the pinned versions before trusting them. The AGPL plus the copyright-assignment requirement in Contributing makes this a poor base for a closed or commercial product, and PRs may sit unmerged. The code tour is thin: it points at main.rs and lib.rs and says the module comments will guide you, so the auth and token flow is only understood by reading the code. The visible tree also shows no tests/ directory, so look for inline tests before relying on it.