Curated collection of lists of useful resources to learn Rust together.
List of forums and chats you may find here. I encourage you to seek for help if you struggle to solve a problem. Rust community is very friendly!
Content
- Tags legend
- General-purpose official resources
-
⭐ General-purpose courses - Advanced
- Additional
- WebAssembly
- Embedded
- Interactive courses on Rust with feedback
- Cheat sheets
- Algorithmic problems and solutions in Rust
- Domain-specific topics
- Setup
- Cross-compile
- Size of binaries
- Memory
- Asynchronous
- Projects catalogue
- Newspapers
- Other lists on Rust
Tags legend
- ( general ) -- general-purpose material
- ( specific ) -- domain-specific material
- ( official ) -- official Rust material
- ( non-eng ) -- non-english language
- ( course ) -- consists of series of text/video articles trying to give to a reader solid foundation
- ( book ) -- a book
- ( reference ) -- a reference
- ( article ) -- either single article or single video-tutorial
- ( not-finished ) -- not finished, too little to learn
- ( interactive ) -- it is possible to interact and get feedback from the system
- ( reading ) -- material to read
- ( video ) -- material to watch
- ( audio ) -- material to listen
- ( list ) -- list of resources
- ( newspaper ) -- regularly updating list of articles
- ( project ) -- project
- ( algo ) -- algorithmic problems and solutions
- ( toy ) -- educatuinal toy projects
- ( introductory ) -- introductory level
- ( advanced ) -- advanced level
- ( about:setup ) -- how to install rust and stup your development environment
- ( about:cross_compile ) -- how to build from one platform to another one
- ( about:mem ) -- about memory management in Rust, the difference between heap, stack, code segments, etc
- ( about:bin_size ) -- about size of target application
- ( about:async ) -- about asynchronous programming
- ( about:closure ) -- about closures
- ( about:selfref ) -- about self-referential structures
- ( about:webasm ) -- about WebAssembly
General-purpose official resources
( general ) ( official ) ( course )
- Rust by Example ( reading )
- Rust на примерах ( reading ) ( non-eng )
- The Rust Programming Language ( reading )
- Язык программирования Rust ( reading ) ( non-eng )
- The Rust Programming Reference ( reading ) ( reference )
- Codebase Reference ( reading ) ( reference )
- Rust cookbook( reading )
- Rust. Сборник рецептов ( reading ) ( non-eng )
⭐
General-purpose courses
( general ) ( course )
-
⭐ Intro to Rust by Tensor Programming ( video ) - Rust Tutorial by Doug Milford ( video )
- The Rust Lang Book by Let's Get Rusty ( video )
- Rust Programming Tutorial by dcode ( video )
- Easy Rust by mithradates ( video )
- Easy Rust by David MacLeod ( reading )
- Программирование на Rust by Computer Science Center ( video ) ( non-eng )
- A Gentle Introduction to Rust ( reading )
- Rust by Tutorials Point ( reading )
- Rust by RIP Tutorial ( reading )
- Take your first steps with Rust by Microsoft Learn ( reading ) ( interactive )
Advanced
( course ) ( advanced )
-
⭐ Crust of Rust by Jon Gjengset ( video ) ( general )
Additional
( course ) ( advanced )
- The Cargo Book ( reading )
- Asynchronous Programming in Rust ( reading ) ( official ) ( about:async )
- Асинхронное программирование на Rust ( reading ) ( official ) ( about:async ) ( non-eng )
- Unsafe Code Guidelines Reference ( reading ) ( official )
- The Rustonomicon - nonsafe programming ( reading ) ( official )
- The Rust Performance Book ( reading )
- Compile-Time Reflection in Rust by Asbjørn Gaarde ( reading )
- The Little Book of Rust Macros ( reading )
- Guide to Rustc Development ( reading )
- API Guidelines ( reading )
WebAssembly
( course ) ( about:webasm )
-
⭐ Rust and WebAssembly ( reading ) - The wasm-bindgen Guide ( reading )
Embedded
- The Embedded Rust Book ( course ) ( reading )
Interactive courses on Rust with feedback
( interactive )
- Rust playground ( official )
- Rust explaine
- Rustlings
- Tour of Rust
- Rust by Exercism
Cheat sheets
- Rust Language Cheat Sheet by Ralf Biedert
- Memoty Layout by Raph Levien
- Cheat Sheet by don bright : basics
Algorithmic problems and solutions in Rust
( algo )
Domain-specific topics
- Understanding lifetimes in Rust by Thomas Heartman ( reading ) ( article )
- Web development with rust by Genus-v Programming ( video ) ( course )
- Yew Crash Course by Jeff No Zhao ( video ) ( article )
- Safety in Systems Programming from Stanford University by Ryan Eberhardt and Julio Ballista ( reading ) ( course )
- Comp Sci Rust Programming Course from University of Pennsylvania's ( reading ) ( course )
- Refactoring to Rust by Lily Mara
📘 ( book ) ( reading ) ( advanced ) :
Setup
( about:setup )
- Install Rust ( official )
- Rustup book ( official ) ( reading ) ( course )
- How to install debugger on Windows by Doug Milford ( video ) ( article )
- How to install debugger on Linux by DevbaseMedia ( video ) ( article )
Cross-compile
( about:cross_compile ) ( specific )
- rust-cross by Jorge Aparicio ( reading ) ( article )
- Cross-Compiling Rust from macOS To Linux by Omar Khawaja ( reading ) ( article )
- Cross compiling Rust from Linux to macOS by James Waples ( reading ) ( article )
- Cross compiling Windows binaries from Linux by Jake Shadle ( reading ) ( article )
Size of binaries
( about:bin_size )
- How to optimize size of binary executable by johnthagen ( reading ) ( article )
- How to optimize size of binary executable ( reading ) ( article )
- How to optimize size of WebAssembly binary executable ( reading ) ( article )
- Optimize Rust binaries size with cargo and Semver by Paul Delafosse ( reading ) ( article )
- Shrinking .wasm Code Size by Rust and WebAssembly ( reading ) ( article )
Memory
( about:mem )
- Refactoring to Rust by Lily Mara ( reading ) ( article )
- Strings in Rust by Erik Zivkovic ( reading ) ( article )
- Making our own executable packer by Amos ( reading ) ( course ) ( about:memory )
Asynchronous
( about:async )
- Async: What is blocking? by Alice Ryhl ( reading ) ( article ) ( introductory )
- Asynchronous Programming in Rust ( reading ) ( official ) ( general ) ( course ) ( advanced )
- Асинхронное программирование на Rust ( reading ) ( official ) ( general ) ( course ) ( advanced ) ( non-eng )
- Pin and suffering ( reading ) ( advanced ) by Amos
Closures
( about:closure )
- Finding Closure by Huon Wilson ( reading ) ( article )
- Understanding Closures by Andrew Pritchard ( reading ) ( article )
Self-referential structures
( about:selfref )
Projects catalogue
( list ) ( project )
- Are we game yet? : gamedev
- Are we web yet? : web
- Are we GUI yet? : user interfaces
- Are we learning yet? : machine learning
- Lib.rs
- A curated list of Rust code and resources by E. Dunham
Newspapers
( list ) ( newspaper )
- Read Rust
- This Week in Rust
- Rust GameDev Working Group
- Rust and WebAssembly
- The Rustacean Station Podcast ( audio )
Other lists on Rust
( list )
- List of resources to learn Rust by Camille TJHOA
- List of resources to learn Rust by hackr.io
- Rust Anthology by Brian Anderson
- Rust Books
📘 by Spiros Gerokostas ( book ) - List of chats and forums
💬 by us - Game Developer's Toolbox
🎮 by Learn Together -
⭐ Toolbox🔧 by us