About Crabrix
A real Rust compiler on a phone, an honest account of its limits, and one developer behind it.
What Crabrix is
Crabrix is a Rust workspace for iPhone and iPad. You write Rust, add real dependencies from crates.io, press Run, and the code compiles and executes on the device in your hand. There is no server doing the work and no account standing between you and the compiler.
That distinction is the whole point. Crabrix bundles and runs a real Rust compiler locally instead of relying on a cloud compilation service.
How it actually works
Every crate Crabrix downloads is fully readable inside the app, file by file, in the Packages screen. Nothing that runs on your device is hidden from you.
The exact toolchain
Crabrix pins one compiler build and ships it in the app. Nothing is downloaded at runtime to compile your code, and the same values are shown in the app under Settings → Runtime:
- Bundled
rustc:1.96.0-dev - Target:
wasm32-wasip1 - Toolchain artifact:
artifacts-test-7
A pinned compiler is older than the current Rust release, so code that relies on an API stabilised after 1.96 will not compile here even though a current laptop toolchain accepts it.
What it cannot do
Being honest about the edges is more useful than a feature list. The bundled
compiler targets wasm32-wasip1 and has no native linker, so:
- Crates with C dependencies, build scripts, or procedural macros generally cannot build. Crabrix detects these and says so instead of failing halfway.
- Compilation is interpreted WebAssembly, so a first build is slower than on a laptop. Repeat builds come from a local artifact cache.
- There is no debugger and no
cargo testharness yet.
The Packages screen labels every dependency verified, expected to work, needs review, or unsupported, based on real build outcomes recorded on device.
Learning, not just tooling
Crabrix contains a full Rust course — 142 lessons across six language courses, from
fn main through ownership, traits, and async to macros, unsafe, and
FFI, plus interview preparation that reaches past the language into memory,
networking, databases, and distributed systems. A separate Algorithm Atlas adds
200 reusable patterns across 20 independent solution methods. Each method has its own
path, and every pattern is taught through a mental model, recognition guide, and local Rust challenge.
Each lesson has a short written explanation and a syntax-highlighted example. Crabrix includes compiler-backed labs across the Rust curriculum, and every Algorithm Atlas pattern ends in a local Rust challenge the bundled compiler has to accept. Three drills — Quick Practice, Term Train, and Code Recall — are generated from that same curriculum and scheduled with SM-2 spaced repetition, so what you are weakest at comes back soonest.
Rating is earned across everything, and a successful run is scored on how much Rust actually changed since the last one. Pressing Run on an untouched sample is not work, and the app does not pretend otherwise.
Who makes it
Crabrix is built by Serhii Ziborov, an independent developer. It is not a company, it has no investors, and it has nobody's growth targets to hit. That is why it is a one-time purchase with no subscription, no advertising, no analytics, and no account.
The source is on GitHub for review. Questions, bugs, and disagreements are welcome — .
Credits
Crabrix stands on work by other people, all of it open source and attributed in full inside the app under Settings → About Crabrix → Open-source licenses:
- The Rust Project — the compiler and standard library, under Apache-2.0 or MIT.
- WasmKit by Akio Yasui — the Swift WebAssembly interpreter, MIT.
- wasm-rustc by Forest Anderson — the WebAssembly build of the toolchain, MIT.
- ZIPFoundation by Thomas Zoechling — archive reading and writing, MIT.
- Swift System, Collections, Atomics, Argument Parser, Log, and NIO — Apache-2.0.
Rust and the Rust logo are trademarks of the Rust Foundation. Crabrix is an independent project, not affiliated with or endorsed by the Rust Foundation or by Apple.