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 Resources[edit | edit source]
The Rust Reference[edit | edit source]
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 Course[edit | edit source]
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 Rustonomicon[edit | edit source]
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 Example[edit | edit source]
Rust by example is a collection of runnable code examples and exercises to help better understand certain language features.
Unofficial Resources[edit | edit source]
Tour of Rust[edit | edit source]
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 Lists[edit | edit source]
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.
Exercism[edit | edit source]
Exercism, a free platform to practice programming skills with exercises and feedback from mentors, has a Rust track with over 90 exercises.
Domain-specific Resources[edit | edit source]
Books by the Working Groups[edit | edit source]
The following books are written by Rust's Working Groups and are available for free online.
Command Line Book[edit | edit source]
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 Book[edit | edit source]
The WebAssembly Book teaches how to write and distribute WebAssembly (WASM) modules in Rust, and how to interoperate with browser APIs.
Embedded Book[edit | edit source]
The Embedded Book teaches how to use Rust on "Bare Metal" embedded systems, such as microcontrollers.
Async Book[edit | edit source]
The Async Book teaches how to develop asynchronous programs in Rust.