MCPcopy Index your code
hub / github.com/CleanCut/ultimate_rust_crash_course

github.com/CleanCut/ultimate_rust_crash_course @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
38 symbols 46 edges 17 files 5 documented · 13%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

UDEMY STUDENTS: This repository has been updated since I moved my courses to Ardan Labs. Udemy students should use the udemy branch of this repository by either clicking on this link to view the udemy branch on GitHub or checking out the udemy branch in your local clone with something like git switch udemy

Ultimate Rust Crash Course

This is the companion repository for the Ultimate Rust Crash Course published online, presented live at O'Reilly virtual events, or in person. You will get the most out of this training experience by trying to accomplish the exercises in this repository and watching (or attending) the instructor-led training.

In other words, this repository is for you hands-on-learners!

I use macOS, and that is what I developed this course on. Everything ought to work similarly on major Linux distributions and Windows. Please contact me ASAP if you have trouble with anything on this page.

Did you like this course? Check out the next one: Ultimate Rust 2: Intermediate Concepts

Install Rust

Rust is required for this course! The latest stable version is always recommended.

  • Go to rust-lang.org and click on the Get Started button and follow the instructions to install Rust for your operating system.
  • Please DO NOT install rust via some other package manager. It will probably be a version that is really old.

You should get somewhat similar output if you run commands like the ones below (newer versions are okay). If you already have an old version of Rust installed, then run rustup update to install a newer version.

$ rustc --version
rustc 1.89.0 (29483883e 2025-08-04)
$ cargo --version
cargo 1.89.0 (c24e10642 2025-06-23)
  • Clone or download this repository to your computer.

Prepare Your Development Environment

Please do the following (see the How To Learn Rust page for details on all of these) - [ ] Choose an IDE (or Editor) and configure it with Rust support and customize it to your liking - VS Code users: Please use the [rust-analyzer] extension. If you have the rust extension installed, please uninstall it! - IntelliJ users: Please use the [intellij-rust] extension. - [ ] Choose one place to "find answers" and either introduce yourself (if it's a forum, IRC, etc.) or find the answer to one question you have. - [ ] Try doing something in Rust! If you don't have a better idea, then just do this: - cargo new message - cd message - cargo run - Edit src/main.rs and change the message. - cargo run again to see your new message. - [ ] Check out the descriptions of the tools and books.

Training!

Now you are ready for the training! Go watch the Ultimate Rust Crash Course (or attend the live session) and come back here for the exercises.

Resources

Exercises

Please clone this repository! These exercises are designed as Rust projects for you to edit on your own computer, with the exception of Exercise A (which is just a README.md file).

The exercises are separate Rust projects inside the exercises/ subdirectory. For each exercise, you should: - Open the correspondingexercise/EXERCISE_NAME directory in your IDE/Editor - Seriously, just open the individual exercise directory in your IDE. If you open the entire repository, your IDE will probably complain that it sees multiple Rust projects. - Navigate to the same directory with your Terminal application (so you can run cargo run, etc.) - Open up the src/main.rs file. - Follow the numbered exercise instructions in the code comments.

If you encounter any problems with the exercises, please feel free to use the online course communication tools to contact me, or open an discussion. Either way. 😄

For your convenience, here is a list of all the exercises, with links to view the code on GitHub.

Core symbols most depended-on inside this repo

print_usage_and_exit
called by 4
exercise/z_final_project/src/main.rs
greet
called by 3
examples/hello/src/lib.rs
blur
called by 1
exercise/z_final_project/src/main.rs
fractal
called by 1
exercise/z_final_project/src/main.rs
dog
called by 1
exercise/c_modules/src/main.rs
cat
called by 1
exercise/c_modules/src/main.rs
fox
called by 1
exercise/c_modules/src/main.rs
inspect_integer
called by 1
exercise/b_functions/src/main.rs

Shape

Function 37
Class 1

Languages

Rust100%

Modules by API surface

exercise/z_final_project/src/main.rs10 symbols
exercise/d_simple_types/src/main.rs6 symbols
exercise/i_traits/src/main.rs4 symbols
exercise/c_modules/src/main.rs4 symbols
exercise/b_functions/src/main.rs3 symbols
exercise/k_enums/src/main.rs2 symbols
exercise/j_collections/src/main.rs1 symbols
exercise/h_structs/src/main.rs1 symbols
exercise/g_ownership_references/src/main.rs1 symbols
exercise/f_strings/src/main.rs1 symbols
exercise/e_control_flow/src/main.rs1 symbols
examples/hello/src/spanish.rs1 symbols

For agents

$ claude mcp add ultimate_rust_crash_course \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact