🦀">
About

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

A real rustcThe app bundles a WebAssembly build of the Rust compiler and standard library. Diagnostics are real rustc diagnostics from Crabrix's pinned bundled toolchain, with the same error codes.
Running in SwiftThat WebAssembly module is executed by WasmKit, a WebAssembly interpreter written in Swift, inside the app's own process. No JIT, no dynamic code loading, no daemon.
A real package managerCrabrix speaks the crates.io sparse index protocol, resolves SemVer ranges, unifies features, verifies SHA-256 checksums, extracts the sources, and compiles and links them.
Sandboxed by constructionYour program runs inside the WebAssembly sandbox with a memory cap, no network, and a single writable directory. It cannot reach the rest of your device.

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:

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:

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:

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.