Official Documentation
The Rust Programming Language
The official Rust book - comprehensive and beginner-friendly. Known as “the book” in the Rust community.
Rust by Example
Learn Rust through runnable examples covering all major language features.
Standard Library Documentation
Complete API documentation for Rust’s standard library with examples.
Rust Reference
Detailed technical reference for the Rust language specification.
Concept-Specific Resources
Ownership and Borrowing
Understanding Ownership
Chapter 4 of The Rust Book - deep dive into ownership, borrowing, and slices.
Visualizing Memory Layout
The Rustonomicon - advanced topics including memory layout and unsafe code.
Types and Patterns
Common Collections
Working with Vec, String, HashMap, and other standard collections.
Enums and Pattern Matching
Comprehensive guide to enums, Option, Result, and match expressions.
Error Handling
Error Handling
Understanding panic!, Result, and error propagation with the ? operator.
Error Handling in Depth
Practical examples of error handling patterns in Rust.
Interactive Learning
Rustlings
Small exercises to get you used to reading and writing Rust code. Install and practice locally.
Rust Playground
Online Rust compiler - test code snippets without installing anything.
Exercism Rust Track
100+ coding exercises with mentorship from experienced Rust developers.
Advent of Code in Rust
Solve programming puzzles in Rust - great for practice and learning.
Essential Tools
Development Tools
rustup
The Rust toolchain installer. Manages Rust versions, targets, and components.
cargo
Rust’s build system and package manager. Included with rustup.
Code Quality Tools
Clippy
A linter to catch common mistakes and improve your Rust code.
rustfmt
Automatic code formatter following Rust style guidelines.
Documentation Tools
cargo doc
Generate documentation for your project and dependencies.
Video Courses and Tutorials
Video content can complement written documentation. These resources are highly recommended by the community.
- Rust Programming Course - freeCodeCamp’s comprehensive video tutorial
- Crust of Rust - Jon Gjengset’s deep dives into Rust concepts
- Rust Crash Course - Traversy Media’s quick introduction
Community Resources
Rust Users Forum
Ask questions, share projects, and discuss Rust with the community.
r/rust
Reddit’s Rust community - news, discussions, and weekly Q&A threads.
Rust Discord
Real-time chat with thousands of Rust developers. Great for quick questions.
This Week in Rust
Weekly newsletter covering Rust news, articles, and jobs.
Books and In-Depth Guides
Recommended Books
Programming Rust (O'Reilly)
Programming Rust (O'Reilly)
Comprehensive guide covering systems programming with Rust. Best for developers with prior programming experience.
- Deep technical coverage
- Real-world examples
- Advanced topics like concurrency and unsafe code
Rust in Action (Manning)
Rust in Action (Manning)
Learn Rust through hands-on systems programming projects.
- Project-based learning
- Focus on practical applications
- Great for understanding low-level concepts
Zero To Production In Rust
Zero To Production In Rust
Build production-ready web applications with Rust.
- Backend web development
- Testing and CI/CD
- Real-world architecture patterns
Specialized Topics
Async Programming
Learn asynchronous programming with async/await syntax.
WebAssembly
Compile Rust to WebAssembly for web applications.
Embedded Rust
Program microcontrollers and embedded systems with Rust.
Command Line Apps
Build powerful and user-friendly CLI tools.
Cheat Sheets and Quick References
Rust Language Cheat Sheet
Quick reference for Rust syntax, types, and common patterns.
Rust Iterator Cheat Sheet
Visual guide to iterator methods and adapters.
Package Registry
crates.io
The official Rust package registry. Search for libraries (called “crates”) to use in your projects.Popular crates:
serde- Serialization/deserialization frameworktokio- Async runtime for I/O operationsclap- Command-line argument parserreqwest- HTTP clientaxum- Web framework
Bookmark the resources most relevant to your current learning stage. Don’t try to consume everything at once!
Back to Learning Path
Return to the recommended learning sequence