Dactyl Enables Native iOS App Development on Web and Android with Wasm-based SwiftUI Renderer
Key point
Dactyl enables native iOS app development and previewing on web and Android through a SwiftUI renderer ported to Wasm.
Details
Dactyl has released a native app development platform based on SwiftUI to address the performance and UX compromises of existing cross-platform frameworks (such as Expo and Flutter) in LLM-based app development. The core technology involves porting the iOS simulator to WebAssembly (Wasm) to run directly within the browser.
Web-based iOS Preview Engine
Dactyl's preview engine includes SwiftUI and major frameworks (Charts, SpriteKit, ARKit, etc.) reimplemented in Swift. Apps are built as Wasm, and the engine generates drawing commands as a binary stream, which the JavaScript host renders to Canvas2D. Layout is fully resolved before the frame, and efficiency is maximized through a reconciler that redraws only changed views.
Dynamic Linking and Modular Architecture
To overcome the static linking limitations of SwiftWasm (approximately 100MB), the engine and standard library are separated into a base module loaded only once, while user apps are split into position-independent side modules ranging from 8KB to 300KB. During editing, only the app is replaced, and app state such as scroll position or input data is preserved via @State snapshots.
Android and iPad Support
On Android, the Swift Android SDK is used to compile into aarch64 native libraries, which are controlled by a Jetpack Compose host via JNI. It reads the same command stream as the browser but mounts actual Material Design components (switches, text fields, etc.) to provide native UX. Icon consistency is maintained through a mapping table between SF Symbols and Material Symbols, and iPad is supported by the same engine with different device descriptors.