mrkeyoor.com_
Fri 23 Oct 17:50 UTC
Dev Toolsevaluationupdated 23 Oct 2026

rustlings review

Rustlings is a collection of small Rust exercises with a terminal program that checks your edits. It helps you practice reading compiler errors while learning the language alongside the official Rust Book.

+50stars / 7d
Verdict

Our Rustlings run passed 20 of 26 maintainer tests and failed 6, despite a successful install and build. It is worth trying beside the Rust Book if your local toolchain is ready, but reproduce initialization and the failed integration cases before making this revision a classroom dependency. The supplied log cannot explain the failures or establish that the learner workflow is broken.

We ran it

Lab card: what happened when we ran rustlingsScreenshot of rustlings (rustlings.rust-lang.org)
Install✓ · 5s67 packages
Build✓ · 31s
Tests✗ · 24s20 passed · 6 failed of 26 (cargo test)
Repo292 files~12,092 lines of source · 0.5 MB · 2 CI workflows · tests dir

Answers from our run

Does rustlings build from source?

Dependencies installed in 5 seconds (67 packages), and the build succeeded in 31 seconds. We cloned commit bc8e511 into a clean Debian container with 3 CPUs and no project-specific setup.

Do rustlings's tests pass?

No. The project's own test command finished in 24 seconds and reported 20 passed, 6 failed (cargo test).

Who should not use rustlings?

Readers expecting a self-contained language textbook: the README explicitly recommends studying Rustlings alongside the Rust Book.

What are the alternatives to rustlings?

The Rust Programming Language, Rust by Example. Our Rustlings run passed 20 of 26 maintainer tests and failed 6, despite a successful install and build.

SetupN/AThe sandbox installed and built successfully, but exact toolchain versions and a supported interactive learner environment were not verified.
Docs4/5On the stated 1/3/5 scale, the setup and usage guides cover the learner route and watcher fallback well; our integration failures remain unexplained.
CommunityN/ASeptember pushes and October discussions establish activity, but response quality for a learner support request was not assessed.
MaturityN/AThe maintainer suite failed in our sandbox, and no interactive classroom or full learner-workflow evaluation was recorded.

Discussed on

  1. hnCodeCrafters CEO adds his paid service as a next step after finishing Rustlings34 points
  2. hnRustlings19 points
  3. hnRustlings - Small exercises to get you used to reading and writing Rust code3 points

Who it’s for

Learners who already have a Rust toolchain and want frequent compiler feedback beside the Rust Book.
Instructors who can prepare local environments and verify the runner before a workshop.

Who it’s NOT for

Readers expecting a self-contained language textbook: the README explicitly recommends studying Rustlings alongside the Rust Book.
Students restricted to a browser: the setup guide requires local Rust and Cargo plus platform tools such as a linker.
Workshops that cannot check their environment in advance: watch mode has a documented manual fallback, and our measured maintainer suite failed.

Setup reality

Our run of commit bc8e511 installed successfully in 5 seconds with 67 dependencies recorded, then built in 31 seconds. Tests failed with exit 101 after 24 seconds: 20 passed and 6 failed out of 26. The checkout was 0.5 MB, with 292 files and about 12,092 source lines.

The documented learner path needs Rust, Cargo, a local editor, and a terminal, without an account or hosted-service credential. Linux needs a linker such as GCC; macOS setup calls for Xcode developer tools. Install the binary, initialize an exercise directory, then run it there.

The recorded 3-CPU, 12 GB sandbox used image label lab-rust:1, which does not establish actual toolchain versions. The scan found 2 CI workflows, a tests directory, and no Dockerfile. Manual mode covers file-watcher trouble, but our log does not connect that issue to the failed tests.

Broken exercises are the teaching method

Rustlings asks you to fix Rust files that deliberately fail to compile. Its usage guide points you toward TODO and todo!() markers, with hints available when you get stuck. That gives a learner an immediate job: make this particular program work. The distinction matters when reading our lab result, because the project's own test command also failed. Expected exercise errors and a failed maintainer suite are different findings.

I'd use Rustlings alongside the Rust Book, as the project recommends. It gives you a reason to stop reading and type something that the compiler can challenge. If you already know another language, that small assignment can expose assumptions that survive a page of explanation. A passing exercise still answers a narrow question. You have made that file satisfy its checks, not demonstrated that you can design a Rust application.

What happened when we ran it

Our Rustlings sandbox installed commit bc8e511 in 5 seconds, recording 67 dependencies, and built it successfully in 31 seconds on October 14, 2026. The test step then failed with exit 101 after 24 seconds. The supplied aggregate was 20 passed and 6 failed out of 26. That result gives source contributors something specific to reproduce, even though the earlier setup steps succeeded.

The tail names init, run_compilation_success, and run_test_success as failures in an integration-test result reporting 5 passed and 3 failed. It also says the fixture tests/test_exercises/exercises/test_success.rs ran with errors. That smaller result does not account for the entire aggregate on its own. Cargo recommends rerunning --test integration_tests, but the excerpt does not show the underlying diagnostic needed to explain why those cases failed.

Our recorded configuration had 3 CPUs, 12 GB of RAM, and image label lab-rust:1. The label does not prove the compiler or operating-system version. The checkout contained 292 files, about 12,092 source lines, and occupied 0.5 MB. The scan found 2 CI workflow files and a tests directory, with no Dockerfile. These are repository observations, not a measurement of how quickly a beginner learns or whether every exercise behaves correctly.

The failed cases deserve investigation before an instructor freezes this revision into a workshop image. Their names concern initialization and successful execution, operations a class will depend on. But the tail cannot tell us whether the failure comes from the toolchain, the sandbox, or the code. Keep the successful build and failed suite in the same decision. Neither cancels the other.

You need a local Rust toolchain before the first exercise

The setup guide requires Rust and Cargo, then uses cargo install rustlings and rustlings init. It calls out GCC for linking on Linux and Xcode developer tools on macOS. Windows users get a recommendation for Windows Terminal. These are concrete reasons to arrange a laptop beforehand if your alternative is a course that runs entirely in a browser.

No account or hosted AI credential appears in that standard workflow. The work is editing local Rust files and checking them with local tools. Setup documentation also explains the Cargo binary-directory PATH problem and how to open offline documentation through rustup. Those details make it a practical study companion once the machine is prepared. Our measured five-second installation is not a promise about downloading Rust or preparing a fresh student's computer.

Automatic reruns have a documented manual fallback

The usage guide says watch mode reruns the current exercise after file changes. If detection fails, rustlings --manual-run lets you request a rerun with r. The same guide asks bug reporters to identify containers or virtual machines, including WSL. That is a documented fallback, not evidence that file watching caused our integration failures.

Exercise-list controls let you revisit or reset work. For self-study, that makes it possible to return to an earlier mistake after the answer feels obvious. For a workshop, verify the edit-to-feedback loop in the exact environment participants will use. A compiler available in one terminal does not establish that an editor's changes will trigger the runner in another environment.

September code activity and October discussion show continued attention

GitHub records the last push as September 29, 2026. Its October issue list includes a pull request updated on October 14 about writing solutions after multiple exercises are completed. That proposal describes its own reproduction steps. It is evidence of current discussion around the learner workflow, not a confirmed explanation for the unrelated failures in our log. A release tag alone would miss this later activity.

Documentation earns 4/5. On our scale, 1 means no usable starting route, 3 means a route with material gaps, and 5 means those gaps are resolved. Rustlings explains the toolchain, terminal workflow, and file-watcher fallback, but those instructions do not diagnose our failing suite. Support responsiveness and classroom reliability remain unscored because neither was established by this run.

Use the Book for explanation and Rust by Example for quick experiments

The Rust Programming Language is available free online. Choose it when you want the explanation to lead, and bring Rustlings back when you need to work through a compiler complaint yourself. Our existing Book page answers that reading decision. This page concerns the extra local practice loop and the evidence needed to trust its runner.

Rust by Example includes a live code editor. Its README says running examples needs an internet connection, although reading can be offline. Choose that route when browser-based examples remove the immediate toolchain obstacle. For Rustlings, prepare your intended environment and reproduce initialization before the lesson starts. Discovering a runner problem while everyone waits is a poor use of the practice time.

Alternatives

ProjectWhat it isPick it when
The Rust Programming Language gh↗The official Rust Book, available free online.pick this instead when you need sustained language explanation before working through local exercises.
Rust by ExampleA collection of Rust examples with a live code editor.pick this instead when browser-based examples are the easiest way to start; running them requires an internet connection.

Sources

  1. Rustlings setup guide
  2. Rustlings usage guide
  3. The Rust Programming Language README
  4. Rust by Example README
  5. Rustlings repository metadata
  6. Rustlings recently updated issues and PRs

More dev tools reviews

PCL · rpcs3 · shellcheck · mpv · dsh-pocket · mkdocs-material · the whole board →

Related reading