Real SwiftUI with live preview — plus a debugger, SwiftData, and Foundation — running 100% in your browser. No Mac. No Xcode. No server.
Plain Swift source — including @State, NavigationStack, Toggle, Path, the works. Hit a tab and our in-browser compiler tokenises, parses, type-checks, and lowers to UIIR — then the canvas renderer paints it onto a real iPhone frame. Tap a button → @State mutates → an identity-aware diff engine rebuilds only the affected subtree. No iframe, no JS shim, no native runtime — just Swift → C compiler → WASM → canvas pixels. The same pipeline you'd ship to a phone, running in your tab.
Our compiler. Our UIIR. Our renderer. Our diff engine. All under one roof in 71K lines of C — no React, no Web Components, no proprietary runtime. The same pipeline you'd target a phone with, just landing on a canvas instead of CoreAnimation. Open in Studio →
Structs, classes, enums, protocols, generics, closures, async/await, error handling, pattern matching — all compiled to WebAssembly.
Array, Dictionary, Set, String (Unicode 17.0), Optional, Result, Range — 290 runtime functions with 180+ inlined method handlers.
Date / Calendar arithmetic + formatting, URL components & resolution, JSON encode/decode, UUID, UserDefaults, Unicode tables — 70+ runtime functions exposed via a JS bridge.
Compile MSL (Metal Shading Language) to WGSL right in the browser. vec3 / mat4 math, mesh primitives (cube · sphere · plane · grid), camera + location passthrough — runs on WebGPU.
Direct IR-to-WASM compilation. No LLVM, no clang, no Binaryen. Structured control flow, dead code elimination, constant folding.
Modular design: compiler core knows zero about stdlib. Modules register type declarations, IR handlers, and WASM builtins via plugin API.
The whole declarative UI surface — 52 views, 75 modifiers, sheets, alerts, gestures, Path & Canvas drawing — rendered to canvas via our own UIIR JSON. Identity-aware diff engine surgically rebuilds just the affected subtree on every @State mutation. Same Swift code you'd ship to a phone, no edits.
Comprehensive test suite covering collections, concurrency, generics, error handling, strings, numerics. Zero regressions policy.
No. MiniSwift runs entirely in your browser — Windows, Linux, Chromebook, even a phone. Nothing to install, no account needed.
Real Swift. It's a from-scratch Swift compiler that runs 100% in your browser — no server compiles your code. It covers a large subset of Swift, SwiftUI, Foundation, SwiftData and more (it isn't an Xcode replacement — see what's supported below).
In your own browser tab. Your code is compiled and executed entirely client-side — nothing is uploaded to a server. That's also why there's no setup and no waiting.
Yes — Studio is free to use. If you want to embed live, runnable SwiftUI in a course, product or docs commercially, get in touch.
That's exactly what it's for. You can embed live, runnable SwiftUI examples so your readers and students run and tweak them right there — no Mac required. (Embeddable widget is on the way; reach out if you want early access.)
It's a large subset, not all of Swift/SwiftUI — some advanced APIs aren't there yet. The coverage pages (SwiftUI · stdlib · Foundation · Metal) show exactly what works.
A Swift compiler, SwiftUI runtime, Foundation bridge and Metal shader compiler — all written from scratch in C, compiled to WebAssembly. No LLVM, no Apple runtime, no third-party dependencies.