Skip to content

Rust Learning References

Felipe Balbi edited this page Mar 28, 2025 · 9 revisions

Summary

Collection of relevant resources useful to learn Rust. Here we have a set of books, training materials, programming exercises, youtube channels, as well as a links to widely used Rust Crates which are important during day-to-day Rust development.

Free Resources

Books

  1. The Rust Book: THE book
  2. The Rust Embedded Book: Focused on #[no_std]
  3. Rustonomicom: All about the Rust Dark Arts
  4. Rust Async Book: All about asynchronous Rust, Futures, delayed execution, etc.

Courses, training material, practical exercises

  1. The Rustlings: Learn Rust by solving progressively harder exercises
  2. Rust by Example: A selection of idiomatic implementation for various things in Rust
  3. Exercism Rust Track: Several small challenges to implement with Rust
  4. Comprehensive Rust: Rust course created and maintained by Google
  5. Rust Classes: Rust training created and maintained by Marcel Ibes
  6. 100 exercises to learn Rust - More practical exercises that build upon each other to flesh out different Rust language constructs

Documentation

  1. Rust documentation on Code Project: Code Project is a good resource for all kinds of programming
  2. Writing an OS in Rust: Nice blog created by Philipp Oppermann on how to create a Rust executable that does not rely on underlying OS APIs.
  3. Setting up VScode for Rust: Short step-by-step tutorial on how to setup vscode for Rust development

Miscellaneous

  1. Rust Blog: Official Rust language blog
  2. Rust Discord: Official discord server for the Rust language
  3. Rust Language Forum: Official Rust discussion forum
  4. Chris Biscardi Youtube Channel: Lots of Rust information, implementation, WebGPU with Rust, Game programming using Bevy (Rust ECS), parsing with Rust, and many more
  5. Jon Gjengset Youtube Channel: Jon does a lot of deep dive into Rust internals. Also delves deep into some major Rust crates
  6. Blessed.rs: A community-led list of famous crates for varied applications
  7. This Week In Rust: Weekly newsletter discussing some of latest events, learning resources, blog posts, tutorials, videos, etc within the Rust community.
  8. Embedded Rustacean: Blog dedicated to embedded rust development.

Important Rust Crates

  1. Clap: Command line parser and CLI generator
  2. Tokio: Asynchronous runtime
  3. Embassy: Asynchronous runtime for embedded devices
  4. Serde: Serializer/Deserializer crate
  5. Anyhow: Generic, idiomatic error handling
  6. This error: Automatic implementation of the Error trait for custom error types
  7. Tracing: Generic instrumentation support
  8. Tracing Subscriber: Utilities for implementing, using, and composing tracing subscribers
  9. Proptest: Property-based testing
  10. Nom: Monadic parsing (aka, parser combinators)
  11. Uefi: Rust bindings to UEFI types
  12. svd2rust: Generate a Peripheral Access Crate (PAC) from an SVD file

Non-free Resources

Books

  1. Command line Rust
  2. Rust Programming
  3. Rust Atomics And Locks
  4. Zero to Production

Training

  1. Ferrous Systems Training
  2. Tweede Golf Training

Rust Tools

  1. Alternative tools written in Rust: alternatives to ls, grep, cat, find, and many others. Work under Linux and Windows
  2. Rust Playground: Write Rust with zero setup effort
  3. GodBolt Rust: Explore Rust code generation by looking at the produced assembly
  4. nushell: Modern shell written in rust. Works under Linux, macOS, and Windows
  5. starship: If you like powerline, you'll enjoy starship
  6. Zed: A modern and very fast code editor. Currently macOS and Linux only.

Clone this wiki locally