This is a curated collection of useful resources for people learning the Rust programming language.
- The official Rust website
- The Rust Programming Language official book (2nd edition, 2018)
- The official Rust website's learning page
- The Rust website's playground: a place to run Rust code in your browser.
- See the About page for more info.
- The Rust Standard Library
- Rust Foundation: the non-profit organization that stewards the Rust programming language and ecosystem
- This Week in Rust: "Handpicked Rust updates, delivered to your inbox"
- The official main Rust blog: "The core team uses this blog to announce big developments in the world of Rust."
- The official Inside Rust blog: "This blog is aimed at those who wish to follow along with Rust development. The various Rust teams and working groups use this blog to post status updates, calls for help, and other similar announcements."
- Read Rust: "Read Rust collects interesting posts related to the Rust programming language."
- The Rust Users Forum: "The Rust Users Forum is a place for Rust users to communicate about anything and everything related to Rust. Ask questions here, coordinate on project ideas, whatever you like!"
- The r/rust subreddit
- The r/learnrust subreddit
- RustConf: "RustConf is an annual (and sometimes virtual) gathering of global Rust developers."
- RustConfig videos of the year's talks are available here
- RustFest Global: "RustFest Global is a Rust community conference. Sessions will be streamed online in three time zones across the globe — join live or re-watch the talks anytime you want!"
- Rust Community Calendar
- RustLab
- The Rust Programming Language: Official book
- Rust By Example
- Command Line Applications In Rust
- Introduction to Rust Web Applications: "This book provides a taste of the full-stack, all-Rust approach to building web apps."
- Rust and Webassembly: "This small book describes how to use Rust and WebAssembly together."
- Learn Rust With Entirely Too Many Linked Lists: "In this series I will teach you basic and advanced Rust programming entirely by having you implement 6 linked lists."
- Rust Cookbook
- The Rustonomicon: The Dark Arts of Unsafe Rust
- Rust Design Patterns
- The Rust Performance Book
- Easy Rust: A book attempting to explain Rust in simple English
- The Embedded Rust Book
- Rust By Practice: "Practice Rust with challenging examples, exercises and projects"
- O'Reilly - Programming Rust by Jim Blandy, Jason Orendorff
- Zero To Production In Rust: "An opinionated introduction to backend development in Rust"
- Fullstack Rust: "The complete guide to building fast, production-ready Rust apps"
- Hands-on Rust: "Effective Learning through 2D Game Development and Play"
- O'Reilly - Command-Line Rust by Ken Youens-Clark
- Tour of Rust
- Stanford CS 110L: Safety in Systems Programming
- UPenn: CIS 198: Rust Programming - Spring 2016
- University of Virginia: cs4414 - Operating Systems
- Rust: The Basics
- Rust In Motion
- Pluralsight - Rust Fundamentals
- Note: Pluralsight charges a monthly paid subscription. Check to see if your local public library or company provides subscriptions.
- Dmitri Nesteruk - The Rust Programming Language
- Rusty CS: "A Computer Science Curriculum with Rust flavor!"
- Curated Rust: "This is a guided walkthrough of the resources that I used to learn Rust. It is being added to incrementally as I myself learn rust over the next couple of weeks and months."
- A Gentle Introduction to Rust
- Learning Rust in 2020
- py2rs: "From Python into Rust"
- Rust in 7 Programs
- 24 Days of Rust
- Introduction to Rust Tutorial
- Roguelike Tutorial in Rust: How to make a roguelike computer game in Rust
- Writing an OS in Rust
- Hecto: Build your own text editor in Rust
- Rustlings
- Exercism - Rust
- Advent of Code: Language-agnostic programming challenges that can be done in Rust
- Project Euler: Language-agnostic programming challenges focused mostly on math problems
- Rust Practise Questions
- The r/dailyprogrammer subreddit
- Rust By Practice
- Rust Anthology Master List: "This is a collection of substantial blog posts about Rust."
- This one is the motherload! There are a ton of good blog posts collected here.
- Rust Survey 2020 Results
- A half-hour to learn Rust
- Clear explanation of Rust’s module system
- Learn Rust With Benford's Law
- Rust 2021: Lower the barriers
- Frustrated? It's not you, it's Rust
- The Official Rust Youtube channel
- Into Rust: Screencasts for learning Rust
- Doug Milford's Rust tutorial playlist: A quality video series teaching various aspects of Rust programming
- RustConf 2020
- Microsoft's Beginner's Series to Rust
- Reddit post - "A list of some YouTube videos (free) that you can use to help get started"
- RustConf 2020 - Rust for Non-Systems Programmers by Rebecca Turner
- Ryan Levick - Introduction to Rust Part 1
- and Part 2
- and more of Ryan Levick's videos, mostly Rust
- Jon Gjengset's Rust videos: Longform videos, not aimed at beginners
- Jeff No Zhao - Rust Tutorials
- dcode - Rust Programming Tutorial
- Tensor Programming - Intro to Rustlang
- Tensor Programming - Rustlang Projects
- Microsoft Reactor - Rust
- YouCodeThings - Rust Videos
- Engineer Man - Rust Videos
- Ryan Levick: Streaming programming videos
- Microsoft Developer - All About Rust
- J M Archer - Rustlang screencasts
- Derek Bananas - Rust tutorial
- Traversy Media - Rust Crash Course | Rustlang
- Chris Hawkes - Learn Rust Programming In 1 Video
- Gary Explains - 12 Things to Help You Learn Rust
- Modulator crate and Play app: "An introduction to the Modulator crate and its playground/testbed application Modulator Play."
- The New Rustacean: A terrific podcast covering one Rust topic per episode as the host learns Rust
- Awesome Rust by rust-unofficial
- awesome-rust.com
- Rust LibHunt
- rust-learning: "A bunch of links to blog posts, articles, videos, etc for learning Rust."
- Not-Yet-Awesome-Rust: "An (unofficial) sub-community of the Rust programming language that wants to close gaps you feel in Rust's ecosystem."
- Awesome Rust Testing
- Awesome Cryptography Rust: "Collect libraries and packages about cryptography in Rust."
- Steadylearner's Rust-Full-Stack: A repo containing various Rust-related links
- Also, see Steadylearner's related blog
- oreqizer's rust-notes: A repo containing notes from a programmer learning Rust with the Rust Book
- Learning Rust through Interview Questions: Some coding interview questions in Rust
- AreWeRustYet: "A curated Awesome list of websites that tracks the state of Rust in related areas"
- AreWeWebYet
- AreWeGameYet
- Tokio: "Tokio is an asynchronous runtime for the Rust programming language. It provides the building blocks needed for writing network applications. It gives the flexibility to target a wide range of systems, from large servers with dozens of cores to small embedded devices."
- Yew: Yew is a modern Rust framework for creating multi-threaded front-end web apps with WebAssembly.
- Inciteful: Inciteful builds a network of academic papers based on a topic of your choice and then analyzes the network to help you find the most relevant literature.
- My terminal became more Rusty
- Rust terminal tools
- log: "A Rust library providing a lightweight logging facade."
- rand: "A Rust library for random number generation"
- chrono: "Date and Time for Rust"
- clap: "Command Line Argument Parser for Rust"
- time
- itoa: "This crate provides fast functions for printing integer primitives to an io::Write or a fmt::Write"
- smallvec: "store up to a small number of items on the stack"
- num-integer: "Integer trait and functions for Rust."
- url: "URL library for Rust, based on the URL Standard."
- futures: "Zero-cost asynchronous programming in Rust"
- ansi_term: "This is a library for controlling colours and formatting, such as red bold text or blue underlined text, on ANSI terminals."
- ryu: "Pure Rust implementation of Ryū, an algorithm to quickly convert floating point numbers to decimal strings."
- crossbeam-utils: "This crate provides miscellaneous tools for concurrent programming"
- generic-array: "This crate implements generic array types for Rust."
- strsim: "Rust implementations of string similarity metrics"
- reqwest: "An ergonomic, batteries-included HTTP Client for Rust."
- serde: "Serde is a framework for serializing and deserializing Rust data structures efficiently and generically."
- syn: "Syn is a parsing library for parsing a stream of Rust tokens into a syntax tree of Rust source code."
- proc-macro2: "A wrapper around the procedural macro API of the compiler's proc_macro crate."
- quote: "This crate provides the quote! macro for turning Rust syntax tree data structures into tokens of source code."
- base64: "It's base64. What more could anyone want?"
- rand_chacha: "A cryptographically secure random number generator that uses the ChaCha algorithm."
- num-traits: "Numeric traits for generic mathematics in Rust."
- regex: "A Rust library for parsing, compiling, and executing regular expressions."
- regex-syntax: "This crate provides a robust regular expression parser."
- https://crates.io/crates/cratetorrent: "Cratetorrent is a Rust crate implementing the BitTorrent version 1 protocol."
Not technically Rust, but Webassembly is closely tied to Rust
- WebAssembly official site
- MDN Docs for WebAssembly
- Wasmer: The Universal WebAssembly Runtime