the Forge

Status

This page is the site grading its own homework.

10/10 examples verified · rustc 1.96.0 · 2026-06-10

Every fenced code example in the curriculum and corpus, and every committed example file, is compiled by the Forge in CI on every push and re-verified weekly against the newest stable toolchain. 3/3 error walkthroughs fail exactly as documented: the deliberately broken examples must produce the exact compiler error the lesson teaches, or the build does not ship.

rustc 1.96.0 (ac68faa20 2026-05-25)

examplemodetimeverdict
corpus/error-handling.md#1check37 mspass
corpus/error-handling.md#2check36 mspass
examples/borrowing/err-1.rscompile-fail30 mspass
examples/borrowing/main-1.rscheck31 mspass
examples/error-handling/main-1.rscheck36 mspass
examples/hello-rust/main-1.rscheck26 mspass
examples/ownership/err-1.rscompile-fail44 mspass
examples/ownership/main-1.rscheck36 mspass
examples/structs-enums/err-1.rscompile-fail29 mspass
examples/structs-enums/main-1.rscheck25 mspass

Provenance

Every push to main runs the vocabulary gates, the Forge, the drift checker, a compile check, and clippy; only then does it deploy. This binary was built from commit 316d329.

The shape of it

Browser ──HTTP──▶ Fly app  learnrust-ai      (axum + Leptos SSR/hydration)
                    ├─ server fns ──sqlx──▶ Fly Postgres            (progress, stats)
                    └─ tutor ── Voyage embed ─▶ Qdrant (.internal) ──▶ Claude
Browser ──direct──▶ play.rust-lang.org/execute                     (run code live)

Decisions, each one inspectable

  • Leptos SSR over a SPA: HTML first, wasm hydration second. src/app.rs
  • The curriculum is one validated data file; the build fails on a dangling prerequisite. curriculum.toml, build.rs
  • The skill tree is pre-rendered SVG: zero layout code ships to the browser. build.rs
  • Examples are committed files, compiled by the Forge; the bytes shown are the bytes verified. examples/, tools/forge/
  • Live code runs on the official Playground rather than a homegrown sandbox. src/playground.rs
  • House style is enforced by the compiler and CI, not by asking nicely. build.rs, .github/workflows/fly-deploy.yml