External learning resources

The Rust programming language community also hosts a number of other texts and resources relating to advanced concepts or domain applications.

Official ResourcesEdit

The Rust ReferenceEdit

The Rust Reference is the primary text for what is considered stable Rust. It is by no means a formal specification of Rust, but it contains most things you need to know about it.

The Rustlings CourseEdit

The Rustlings Course is a community-maintained course that contains "small exercises to get you used to reading and writing Rust code". This course is terminal-based, although there is an (older) web-based version that provides links exercises in the Rust Playground.

The RustonomiconEdit

The Rustonomicon (often abbreviated to just the "nomicon") is an online community-reviewed text concerning or related to unsafe code in the Rust programming language.

As stated by the documentation itself:

Topics that are within the scope of this book include: the meaning of (un)safety, unsafe primitives provided by the language and standard library, techniques for creating safe abstractions with those unsafe primitives, subtyping and variance, exception-safety (panic/unwind-safety), working with uninitialized memory, type punning, concurrency, interoperating with other languages (FFI), optimization tricks, how constructs lower to compiler/OS/hardware primitives, how to not make the memory model people angry, how you're going to make the memory model people angry, and more.

Rust by ExampleEdit

Rust by example is a collection of runnable code examples and exercises to help better understand certain language features.

Unofficial ResourcesEdit

Tour of RustEdit

Tour of Rust is a Rust tutorial available in several languages. It includes code examples that can be modified and executed in the browser.

Learn Rust with Entirely Too Many Linked ListsEdit

Learn Rust with Entirely Too Many Linked Lists is a book tutorial that implements six linked lists in Rust. It uses unsafe frequently, as linked lists are difficult to implement safely.

ExercismEdit

Exercism, a free platform to practice programming skills with exercises and feedback from mentors, has a Rust track with over 90 exercises.

Domain-specific ResourcesEdit

Books by the Working GroupsEdit

The following books are written by Rust's Working Groups and are available for free online.

Command Line BookEdit

The Command Line Book teaches how to write command-line interface (CLI) applications in Rust. It is currently outdated, since it uses deprecated crates.

WebAssembly BookEdit

The WebAssembly Book teaches how to write and distribute WebAssembly (WASM) modules in Rust, and how to interoperate with browser APIs.

Embedded BookEdit

The Embedded Book teaches how to use Rust on "Bare Metal" embedded systems, such as microcontrollers.

Async BookEdit

The Async Book teaches how to develop asynchronous programs in Rust.