This is a four day Rust course developed by the Android team. The course covers the full spectrum of Rust, from basic syntax to advanced topics like generics and error handling. It also includes Android-specific content on the last day.
An introductory book about Rust
A collection of runnable examples that illustrate various Rust concepts and standard libraries
Rust Language Cheat Sheet
If you're looking to start writing asynchronous Rust code, you've come to the right place. Whether you're building a web server, a database, or an operating system, this book will show you how to use Rust's asynchronous programming tools to get the most out of your hardware
Rust's way of introducing changes into the language that would not otherwise be backwards compatible
This small book describes how to use Rust and WebAssembly together.
This small book describes how to use Rust and WebAssembly together.
The primary reference for the Rust programming language
Digs into all the awful details that you need to understand when writing Unsafe Rust programs.
Consists of a number of chapters, each one organized by a "feature flag." That is, when using an unstable feature of Rust, you must use a flag
Serves as a repository of supplementary documentation useful for members of The Rust Programming Language
This book was designed for easily diving into and get skilled with Rust, and it's very easy to use: All you need to do is to make each exercise compile without ERRORS and Panics!
This book is an attempt to distil the Rust community's collective knowledge of Rust macros. As such, both additions (in the form of pull requests) and requests (in the form of issues) are welcome.
This book contains many techniques that can improve the performance speed and memory usage of Rust programs.
Rust Memory Container Cheat-sheet
This is a set of recommendations on how to design and present APIs for the Rust programming language.
This document collects the emerging principles, conventions, abstractions, and best practices for writing Rust code.
Collection of design patterns written in Rust
This textbook is for these companies and people to learn Rust with simple English.
This book is about wasm-bindgen, a Rust library and CLI tool that facilitate high-level interactions between wasm modules and JavaScript.
This course will teach you Rust's core concepts, one exercise at a time.

rust cli

How to use cargo (Rust package manager)
The standard Rust distribution ships with a tool called rustdoc. Its job is to generate documentation for Rust projects. On a fundamental level, Rustdoc takes as an argument either a crate root or a Markdown file, and produces HTML, CSS, and JavaScript.
Talk about Rustc (The compiler for the Rust programming language)


Build a simple LSM-Tree storage engine in the Rust programming language.
ripgrep recursively searches directories for a regex pattern while respecting your gitignore
Build a text editor from scratch
A terminal Spotify client. Small, simple, well organized and async, it's good for learning
Write small CLIs (clones of headcatls)
guide you through writing a CLI (command line interface) application in Rust
Make a command line program that lets you hide secret messages in PNG files
Creates a small operating system
Recreate your favorite developer tools from scratch
An incomplete Redis client and server implementation using tokio
A guide to writing a DNS Server from scratch in Rust
A step by step guide through the features of the Rust programming language



Serialization (JSON, YAML, etc)
See here for supported formats. serde [docs] De facto standard serialization library. Use in conjunction with sub-crates like serde_json for the specific format that you are using.
diesel [docs] Has excellent performance and takes an approach of strict compile time guarantees. The main crate is Sync only, but diesel-async provides an async connection implementation.
HTTP Server
actix-web [docs] A performance focussed framework. All Rust frameworks are fast, but choose actix-web if you need the absolutely maximum performance.