This documentation is available as Markdown for AI agents and LLMs. See the full Markdown index or append .md to any documentation URL.
Use an iOS Simulator on Linux or Windows
Edit page
Build an iOS app with EAS Build and run it on a remote iOS Simulator from Linux, Windows, or a cloud sandbox with Expo Simulators.
Expo Simulators is a limited-access preview. It is not included with paid or free plans and is currently available only to select partners. Join the waitlist if you are interested in trying it.
The iOS Simulator runs only on macOS. With Expo Simulators, the iOS Simulator runs on a Mac on EAS, and you control it from any computer. Use EAS Build to create the iOS Simulator build, then install it on an Expo Simulators session.
This workflow also works in a cloud sandbox or for a background coding agent that cannot run a local simulator.
Build and run on a remote iOS Simulator
1
Add a simulator build profile
Add an EAS Build profile that targets the iOS Simulator. For live edits with Fast Refresh, also add developmentClient: true:
iOS Simulator builds are not signed, so EAS Build does not ask for credentials for this build.
For a fixed build without live edits, leave out developmentClient, skip step 3, and remove the --open-url flag from the command in step 4.
3
Start Metro with a tunnel
From SDK 58, npx expo start --tunnel uses this tunnel by default and ignores EXPO_UNSTABLE_TUNNEL_V2. On Windows, see Run commands on Windows for the syntax that sets the variable.
5
See and control the simulator
Open the browser preview URL from the start output in a desktop browser. You can also use agent-device commands through eas simulator:exec. See Control a remote simulator with agent-device, Argent, or Appium.
Run commands on Windows
EAS CLI runs on Windows. The shell examples in these docs use the shell syntax of macOS and Linux. For example, EXPO_UNSTABLE_TUNNEL_V2=1 npx expo start --tunnel sets an environment variable for one command, which does not work in PowerShell or Command Prompt. In PowerShell, set the variable first:
In Command Prompt, use set. Do not put a space before &&, because the space becomes part of the value:
Commands that continue on a new line with \ also fail in PowerShell. Put the command on one line, or end each line with a backtick (`) instead.
You can also run the examples as written in Windows Subsystem for Linux (WSL) or Git Bash.
Common questions
Do I need Xcode?
No. EAS Build creates the iOS Simulator build, and Expo Simulators runs the iOS Simulator. You need Xcode only to create a build on your own computer.
Which iOS devices can I use?
iPhone 17, iPhone 17 Pro, iPhone 17 Pro Max, iPhone 17e, iPhone Air, and several iPad models. See Expo Simulators devices.