- The Rust Programming Language[GitHub] mirror mirror zh-CN mirror zh-CN

This version of the text assumes you’re using Rust 1.41.0 or later with edition="2018" in Cargo.toml of all projects to use Rust 2018 Edition idioms. See the “Installation” section of Chapter 1 to install or update Rust, and see the new Appendix E for information on editions. - The rustup book

rustup installs The Rust Programming Language from the official release channels, enabling you to easily switch between stable, beta, and nightly compilers and keep them updated. It makes cross-compiling simpler with binary builds of the standard library for common platforms. And it runs on all platforms Rust supports. - Rust Forge

Rust Forge serves as a repository of supplementary documentation useful for members of The Rust Programming Language. If you find any mistakes, typos, or want to add to the Rust Forge, feel free to file an issue or PR on the Rust Forge GitHub. - Rust-101

This is Rust-101, a small tutorial for the Rust language. It is intended to be an interactive, hands-on course: I believe the only way to really learn a language is to write code in it, so you should be coding during the course. - Rust by Example

Rust is a modern systems programming language focusing on safety, speed, and concurrency. It accomplishes these goals by being memory safe without using garbage collection.

Rust by Example (RBE) is a collection of runnable examples that illustrate various Rust concepts and standard libraries. To get even more out of these examples, don't forget to install Rust locally and check out the official docs. Additionally for the curious, you can also check out the source code for this site. - The rustc book

Welcome to “The rustc book”! rustc is the compiler for the Rust programming language, provided by the project itself. Compilers take your source code and produce binary code, either as a library or executable. - The Rust Standard Library

The Rust Standard Library is the foundation of portable Rust software, a set of minimal and battle-tested shared abstractions for the broader Rust ecosystem. It offers core types, like Vec<T> and Option<T>, library-defined operations on language primitives, standard macros, I/O and multithreading, among many other things.
std is available to all Rust crates by default. Therefore, the standard library can be accessed in use statements through the path std, as in use std::env. - The Edition Guide

Welcome to the Rust Edition Guide! “Editions” are Rust's way of communicating large changes in the way that it feels to write Rust code. - Rust explained using easy English

Rust is a new language that already has good textbooks. But sometimes its textbooks are difficult because they are for native English speakers. Many companies and people now learn Rust, and they could learn faster with a book that has easy English. This textbook is for these companies and people to learn Rust with simple English. - rustlings 🦀❤️

Greetings and welcome to rustlings. This project contains small exercises to get you used to reading and writing Rust code. This includes reading and responding to compiler messages! - RustPrimer[GitHub] zh-CN

Rust 是一门系统级编程语言,被设计为保证内存和线程安全,并防止段错误。作为系统级编程语言,它的基本理念是 “零开销抽象”。理论上来说,它的速度与 C / C++ 同级。 - 通过例子学 Rust zh-CN

《通过例子学 Rust》(Rust By Example, RBE)内容由一系列可运行的实例组成,通过这些例子阐明了各种 Rust 的概念和基本库。想获取这些例子外的更多内容,不要忘了安装 Rust 到本地并查阅官方标准库文档。另外为了满足您的好奇心,你可以查阅本网站的源代码。 - Rust 版本指南 zh-CN

《Rust 版本指南》(The Rust Edition Guide 中文版)翻译自 The Rust Edition Guide,内容已全部翻译完成。 - Rust 规范文档 zh-CN

本文档是学习 Rust 语言本身或者与 Rust 有关的其他资料的知识库,包括了 Rust 语言的翻译指引、Rust 术语中英文对照表,以及 TOML 配置语言。内容将会不断更新拓展。 - Rust权威指南 zh-CN

本书由 Rust 核心开发团队编写而成,由浅入深地探讨了 Rust 语言的方方面面。从学习函数、选择数据结构及绑定变量入手,逐步介绍所有权、trait、生命周期、安全保证等高级概念,模式匹配、错误处理、包管理、函数式特性、并发机制等实用工具,以及两个完整的项目开发实战案例。 作为开源的系统级编程语言,Rust 可以帮助你编写出更为快速且更为可靠的软件,在给予开发者底层控制能力的同时,通过深思熟虑的工程设计避免了传统语言带来的诸多麻烦。 本书被视为 Rust 开发工作的必读书目,适合所有希望评估、入门、提高和研究Rust语言的软件开发人员阅读。 - Rust编程之道 zh-CN

《Rust编程之道》并非对语法内容进行简单罗列讲解,而是从四个维度深入全面且通透地介绍了Rust 语言。从设计哲学出发,探索Rust 语言的内在一致性;从源码分析入手,探索Rust 地道的编程风格;从工程角度着手,探索Rust 对健壮性的支持;从底层原理开始,探索Rust 内存安全的本质。
《Rust编程之道》涵盖了Rust 2018 的特性,适合有一定编程经验且想要学习Rust 的初学者,以及对Rust 有一定的了解,想要继续深入学习的进阶者。 - The (unofficial) Rust FFI Guide

Given Rust's popularity and position as a systems programming language, you'll probably reach a point where you want to integrate a Rust module into some existing application. This guide was created to fill the current gap in knowledge when it comes to doing more in-depth FFI tasks than simply calling one or two functions from a C library. - The Cargo Book

Cargo is the Rust package manager. Cargo downloads your Rust package’s dependencies, compiles your packages, makes distributable packages, and uploads them to, the Rust community’s package registry. You can contribute to this book on GitHub. - Cargo 中文文档 zh-CN

《Cargo 中文文档》由 chinanf-boy 翻译自 Cargo 官方文档 The Cargo Book。感谢 chinanf-boy 和 Cargo 团队的无私奉献。 - Rust 🦀 and WebAssembly 🕸

This book is for anyone interested in compiling Rust to WebAssembly for fast, reliable code on the Web. You should know some Rust, and be familiar with JavaScript, HTML, and CSS. You don't need to be an expert in any of them. - The Little Book of Rust Macros[GitHub]

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. - Asynchronous Programming in Rust [GitHub]

Welcome to Asynchronous Programming in Rust! 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. - Async programming in Rust with async-std

This book serves as high-level documentation for async-std and a way of learning async programming in Rust through it. As such, it focuses on the async-std API and the task model it gives you. - Tokio Tutorial

This tutorial will take you step by step through the process of building a Redis client and server. We will start with the basics of asynchronous programing with Rust and build up from there. We will implement a subset of Redis commands but will get a comprehensive tour of Tokio. - Futures Explained in 200 Lines of Rust[GitHub] zh-CN en zh-CN

This book aims to explain Futures in Rust using an example driven approach, exploring why they're designed the way they are, and how they work. We'll also take a look at some of the alternatives we have when dealing with concurrency in programming. - Exploring Async Basics with Rust

This book aims to take a look at the why and how of concurrent programming. First we build a good foundation of basic knowledge, before we use that knowledge to investigate how Node.js works by building a Node-inspired runtime. - Repository for the Green Threads Explained Book

This book aims to explain green threads by using a small example where we implement a simple but working program where we use our own green threads to execute code. - Rust异步编程 [GitHub] zh-CN

欢迎使用Rust异步编程!如果你想开始编写Rust异步代码,那你找对地方了。无论你在构建Web服务器, 数据库还是操作系统,本书都会教你如何使用Rust的异步编程工具来榨干硬件性能 - Epoll, Kqueue and IOCP Explained with Rust [GitHub]

This book aims to explain how Epoll, Kqueue and IOCP works, and how we can use this for efficient, high performance I/O. The book is divided into three parts: - Green Threads Explained in 200 Lines of Rust

This book aims to explain green threads by using a small example where we implement a simple but working program where we use our own green threads to execute code. - Rust, Tokio, CN, Doc, Demo zh-CN

Tokio 它是Rust语言的一种异步运行时 可以用来编写可靠,异步的Rust应用. - The Embedded Rust Book

Welcome to The Embedded Rust Book: An introductory book about using the Rust Programming Language on “Bare Metal” embedded systems, such as Microcontrollers. - Embedded Rust documentation

Welcome to an overview of the documentation provided by the embedded Working Group. All of these projects are managed by the resources team. - The Embedonomicon

The embedonomicon walks you through the process of creating a #![no_std] application from scratch and through the iterative process of building architecture-specific functionality for Cortex-M microcontrollers. - Operating System development tutorials in Rust on the Raspberry Pi

This is a tutorial series for hobby OS developers who are new to ARM's 64 bit ARMv8-A architecture. The tutorials will give a guided, step-by-step tour of how to write a monolithic Operating System kernel for an embedded system from scratch. They cover implementation of common Operating Systems tasks, like writing to the serial console, setting up virtual memory and handling HW exceptions. All while leveraging Rust's unique features to provide for safety and speed. - The Rust Reference

This book is the primary reference for the Rust programming language. It provides three kinds of material:

  • Chapters that informally describe each language construct and their use.
  • Chapters that informally describe the memory model, concurrency model, runtime services, linkage model, and debugging facilities.
  • Appendix chapters providing rationale and references to languages that influenced the design. - Guide to Rustc Development

This guide is meant to help document how rustc – the Rust compiler – works, as well as to help new contributors get involved in rustc development. - The Rustonomicon

The Rustonomicon digs into all the awful details that you need to understand when writing Unsafe Rust programs. - The Rust Unstable Book

Welcome to the Unstable Book! This book 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. - Command line apps in Rust [GitHub]

Documentation on how to use the Rust Programming Language to develop commandline applications - Serde

Serde is a framework for serializing and deserializing Rust data structures efficiently and generically. - Rust Language Cheat Sheet[GitHub]

Contains clickable links to The Book BK, Rust by Example EX, Std Docs STD, Nomicon NOM, Reference REF. Other symbols used: largely deprecated 🗑️, has a minimum edition '18, is work in progress 🚧, or bad 🛑. - Basics - Rust cheat sheet[GitHub]

Basics - Rust cheat sheet - How I Wrote a Modern C++ Library in Rust[PDF]

Since version 56, Firefox has had a new character encoding conversion library called encoding_rs. It is written in Rust and replaced the old C++ character encoding conversion library called uconv that dated from early 1999. Initially, all the callers of the character encoding conversion library were C++ code, so the new library, despite being written in Rust, needed to feel usable when used from C++ code. In fact, the library appears to C++ callers as a modern C++ library. Here are the patterns that I used to accomplish that. - Rust Breakdown Notes Cheat Sheet - Rust Style Guide

Formatting code is a mostly mechanical task which takes both time and mental effort. By using an automatic formatting tool, a programmer is relieved of this task and can concentrate on more important things. - Rust API Guidelines

This is a set of recommendations on how to design and present APIs for the Rust programming language. They are authored largely by the Rust library team, based on experiences building the Rust standard library and other crates in the Rust ecosystem. - Coding Guidelines

This document describes the coding guidelines for the Libra Core Rust codebase. - Rust SIMD Performance Guide

Introduction, What is SIMD, History of SIMD in Rust - Rust's Unsafe Code Guidelines Reference

This document is produced by the UCG WG to provide a “guide” for writing unsafe code that “recommends” what kinds of things unsafe code can and cannot do, and that documents which guarantees unsafe code may rely on. It is largely a work-in-progress right now. - Secure Rust Guidelines[GitHub]

Rust is a multi-paradigm language with a focus on memory safety. - The Rust Performance Book [GitHub]

This book contains techniques that can improve the performance—speed and memory usage—of Rust programs. It also contains some techniques that will improve the compile times of Rust programs. Some of these techniques only require changing build configurations, but many require changing code. - actix-web 中文文档 zh-CN

actix-web 是 Rust 生态中的最为优秀的 web 框架之一,具有类型安全、功能丰富、扩展性强,以及速度极快的诸多优点。 - Rust 生态实践指南 [GitHub] zh-CN

Rust 生态实践指南 - The Guide to Rust Crates - mdBook 中文文档 zh-CN

mdBook是一个命令行工具和Rust crate。可将Markdown文件创建为书籍。它与Gitbook非常相似,但用Rust编写. - The Little Book of Rust Books

This book is a treasure-trove of Rust books in mdbook format:

- Official books maintained at
- Unofficial books maintained elsewhere
- Application books on specific Rust applications
- Books in Other Formats