Unofficial Rust Books
The following books are maintained outside rust-lang.org.
Introductory:
- A Gentle Introduction To Rust
- A half-hour to learn Rust
- Comprehensive Rust 🦀 - a multi-day course developed by Google to teach Rust to Android engineers
Dyner
- experimental trait (dyn) objects in Rust- Easy Rust - aimed at non-English native speakers
- Effective Rust - Rust guidelines1
- Learn Rust the Dangerous Way
- Learning Rust - a collection of resources by
quinedot
- Learning Rust With Entirely Too Many Linked Lists
- Rust By Practice - Practise Rust with challenging examples, exercises and projects
- Rust Cookbook - a collection of example programs
- Rust for C++ Programmers
- Rust for the Polyglot Programmer
- Rust Ownership, the Hard Way
- Rust 101 - Rust programming language learning guide
Application domains:
- A thoughtful introduction to the pest parser
- Async
- Async programming in Rust with async-std
- Async Raft - the Raft distributed consensus protocol in async Rust
- Learning Async Rust with Entirely Too Many Web Servers
- The Node Experiment - Exploring Async Basics with Rust
- Tokio Tutorial - event-driven, non-blocking I/O
- Comparing parallel Rust and C++
- Command line
- Command Line Applications in Rust
- PNGme: An Intermediate Rust Project - build a command line program to hide secret messages in PNG files
- CXX — Safe Interop Between Rust and C++
- Embedded
- Embedded: The Missing Parts
- Embedded Rust on Espressif - training Material for learning to use Embedded Rust with the Espressif ESP32-C3.
- The Embedded Rust Book
- The Embedonomicon - build a
#![no_std]
application from scratch - The Rust on ESP Book - comprehensive guide on using the Rust programming language with Espressif SoCs and modules.
- Workbook for Embedded Workshops - an embedded Rust workshop
- Engineering Rust Web Applications
- Foreign Function Interface (FFI)
- The Rust FFI Omnibus
- The (unofficial) Rust FFI Guide - FFI in depth
- Futures Explained in 200 Lines of Rust
- GraphQL
- Async-graphql Book - GraphQL server-side library
- Cynic - A GraphQL Client For Rust
- Juniper - GraphQL Server for Rust
- Real-Time Interrupt-driven Concurrency
- Triangle From Scratch - draw a triangle using Win32, but no external crates
- Web assembly
- Writing an OS in Rust
- Writing Interpreters in Rust: a Guide
Other:
- Macros
- Advanced Macros
- MacroKata - a series of worked exercises to learn macros
- The Little Book of Rust Macros
- High Assurance Rust - developing secure and robust software
- Rust Design Patterns
- Rust Fuzz Book - fuzz testing
- Rust Performance
- Salsa - framework for on-demand, incrementalized computation
- Secure Rust Guidelines
- The Little Book of Rust Books
- The Rust Rand Book - Rust’s random number library
- Rust Tutorials
1
Some concepts are incomplete, as of March 2022.