Free SwiftUI playground
Free SwiftUI playground that runs in any browser.
No Mac. Shareable phone links. Paste one SwiftUI view, or some small files, and click Run. Rondar builds the code and shows the app in a phone frame. Each result gets a public link.
Run a SwiftUI view
Sample screens
Select a sample to put it in the editor. Then click Run.
What renders
The playground uses the iOS mobile preview of Rondar. It builds your code with SwiftOpenUI on WebAssembly. SwiftOpenUI is an open reimplementation of SwiftUI. It is not the SwiftUI of Apple, so some parts look different and some parts do not render.
This table comes from the test corpus of the mobile preview. A part that is not in the table is not checked.
| Area | SwiftUI parts | Status |
|---|---|---|
| Text | Text |
Renders |
| Stacks and layout | VStack, HStack, ZStack, Spacer, padding |
Renders |
| Lists | List, ForEach |
Renders |
| Forms | Form, Section |
Renders |
| Buttons and state | Button, @State, @Binding |
Renders |
| Text input | TextField |
Renders |
| Navigation, one level | NavigationStack, NavigationLink |
Renders |
| Images and fonts from the app | Image("name"), font |
Renders |
| State after a rebuild | Route and form state that Codable can save |
Opt-in |
| Network requests | URLSession with mock responses |
Not in the playground |
| UIKit and AppKit | UIKit, AppKit, UIViewRepresentable |
Does not render |
| Packages and binary frameworks | Swift packages, XCFrameworks |
Does not render |
| Device services | Location, Push notifications, Bluetooth, StoreKit |
Does not render |
How it works
- You send the Swift files. Rondar checks the size, the file names and the imports.
-
Rondar adds an app entry when your files have no
@mainApp. Rondar writes the Package.swift. Your files cannot add a package, a plugin or a macro. - A build server compiles the code to WebAssembly with the pinned Swift toolchain, in a new directory for each run. Rondar removes the directory after the build.
- Your browser runs the app in a sandboxed frame.
Scope and limits
- SwiftUI views only. UIKit, AppKit and other Apple frameworks are not available.
- No Xcode projects, no Swift packages, no assets and no network requests.
- No Android and no App Store builds.
- At most 5 files and 32 KB. A build stops after 90 seconds.
- Each network address can start a small number of runs in an hour, and the playground has a daily limit.
- Do not paste secrets. Each result and its source are public.