Lesson 05 · Backend & Systems with Rust
Rust Capstone — Build Real Projects
Two real projects close the Rust track: a persistent todo CLI built on std, serde, and Result end to end, then the same data behind an axum and tokio JSON API - with tests, toolchain discipline, shipping milestones, and honest limits.
Prerequisites: Rust: Collections, Generics & Lifetimes
Learning objectives
By the end of this lesson, you will be able to:
- Build a CLI tool from scratch: parse arguments with std::env, persist tasks to JSON with serde, and handle every failure with Result instead of panic
- Add dependencies properly with cargo add and Cargo.toml, and justify every crate a project lists
- Serve a JSON API with axum and tokio: routing, extractors, JSON responses, and shared state behind the State extractor
- Map ports, listeners, and the accept loop onto the running axum server to explain how networking foundations work
- Ship with discipline: Result-returning tests, cargo test and clippy and fmt, a README, and milestones with acceptance criteria