iPhone & iPad ยท one-time purchase

A real Rust compiler,
in your pocket.

Crabrix runs rustc itself on your device. Not a sandbox that phones home, not a syntax-highlighted notepad โ€” the actual compiler, resolving real crates.io packages and producing real diagnostics, with the network off.

See the price Source on GitHub No subscription. No accounts. No ads.

What it actually does

Four things that normally require a laptop, done on a phone.

โš™๏ธ

Compiles Rust on device

A pinned WASI build of rustc executes inside a Swift WebAssembly interpreter. Real type checking, real borrow checking, real error codes โ€” the first compile is genuine, and identical repeat runs come from a local cache.

๐Ÿ“ฆ

Resolves real crates.io packages

Sparse-index resolution, SemVer and feature unification, target filtering, SHA-256-verified downloads, dependency compilation, and --extern linking. It writes a real Cargo.lock, and cached packages rebuild offline.

๐ŸŽ“

Teaches from the compiler

59 lessons across six courses, each with a syntax-highlighted example and a lab the bundled compiler actually checks. Diagnostics become explanations, practice, and a suggested repair.

โœˆ๏ธ

Works with the network off

The toolchain ships inside the app and never downloads at runtime. Once a project's packages are cached, it builds in airplane mode.

On the device

Adaptive layout: a workspace on iPad, drawers on iPhone.

Projects dashboard
Projects
Project library
Library โ€” 20 projects
Build workspace
Build
Learn tab
Learn
Crabrix workspace on iPad
The iPad workspace: files and resolved packages, editor, build inspector.

The curriculum

Six courses, ten units, 59 lessons โ€” from fn main to unsafe and FFI.

Rust FoundationsTypes, operators, functions, control flow, docs
Ownership & BorrowingMoves, borrows, slices, Copy, Drop, lifetimes
Modeling DataStructs, enums, Option/Result, strings, patterns
AbstractionsGenerics, traits, closures, iterators, operators
Real ProjectsModules, tests, errors, dependencies, workspaces
Smart PointersBox, Rc, RefCell, Deref, Drop, cycles
Fearless ConcurrencyThreads, channels, Mutex, Send & Sync
Async RustFutures, runtimes, join and cancellation
Macrosmacro_rules!, proc macros, cfg and features
Systems Rustunsafe, FFI, performance, idioms

Plus Quick Practice, Term Train with a timed mode, twelve achievements, and a rating you earn across everything you do.

Price

Buy it once. It is yours, on iPhone and iPad, with every update included.

Launch price
$17.99 ยท then $24.99
  • One-time purchase โ€” no subscription, ever
  • Universal: iPhone and iPad, one buy
  • No in-app purchases and no paywalled features
  • No account, no ads, no analytics, no tracking
  • Free updates

The compiler, the package manager, and the whole curriculum are in the app you buy. Nothing is held back for a second transaction.

What it does not do

A compiler on a phone has real edges. Better you read them here than discover them later.

  • Procedural macros do not run. They need a host-native compiler, so serde's derive feature and anything like it is reported as unsupported rather than silently mis-built.
  • Build scripts are not executed. Many crates whose build.rs only probes compiler features still work, and those are flagged for review rather than blocked.
  • Crates that link native C libraries are out of reach, as are ones that build only as cdylib or staticlib.
  • Builds take minutes, not seconds. rustc runs in an interpreter. A first build with one package is around five minutes; the identical rebuild is under a second from cache.
  • The codegen backend has gaps. A few crates hit unimplemented 64-bit operations. Crabrix records the real outcome of every dependency build and shows it, with the compiler's own reason.

Questions

Is this really compiling, or is it sending my code to a server?

Really compiling. The rustc binary and its wasm32-wasip1 sysroot are inside the app bundle, verified by SHA-256 at build time. Turn on airplane mode and it still compiles. The only network calls are ones you start: importing a public GitHub snapshot, searching crates.io, and downloading packages.

Which crates work?

Pure-Rust, no-std-friendly and std crates that do not need proc macros or native libraries. Verified working examples include smallvec, memchr, log, once_cell, arrayvec, either, cfg-if and anyhow. Crabrix records what actually built and tells you the reason when something does not.

Do I need an account?

No. There is no sign-in, no cloud sync, and no analytics. Your projects, your progress, and your rating live on your device.

Can I get my projects in and out?

Yes. Import a folder from Files or iCloud Drive, import a public GitHub repository snapshot, or open a shared GitHub link straight from Safari. Export as an editable .crabrixproject package or as a plain ZIP for AirDrop, Mail, or Files.

Why is it a one-time purchase?

Because it is a tool, not a service. Nothing runs on a server on your behalf, so there is no recurring cost to pass on.

Which devices does it need?

iOS and iPadOS 18 or newer. It runs on an iPhone, but a compiler is CPU-heavy work: newer devices build noticeably faster, and an iPad gives you the full multi-panel workspace.

About

Crabrix is built by Serhii Ziborov. It began as one stubborn question โ€” whether a real Rust compiler could type-check and run code inside an iPhone app while offline โ€” and turned into a workspace once the answer was yes.

The source is publicly readable on GitHub for review and evaluation. It is commercial software, not an open-source project: reuse, redistribution, or derivative works need written permission. Bundled third-party components keep their own licences and attributions.