Hot reload · Breakpoints · DevTools

Test your Flutter apps on Windows, right on your Mac.

SimWin builds the real Windows debug build of your Flutter app on your Mac and runs it in a Windows 11-style window. Pick SimWin · Windows 11 in VS Code or Android Studio and press Run. No PC, no virtual machine.

Or install from Terminal

curl -fsSL https://simwin.dev/install.sh | bash

macOS 14 or later · Apple Silicon and Intel · Notarized by Apple

What SimWin does

Check the Windows version of your app while you build it

Find layout, scaling, keyboard and platform bugs on your Mac, not after someone tries your app on a PC.

The real Windows build

Compiled for Windows x64 on your Mac. Platform.isWindows is true, paths are C:\…, and your Windows plugin code runs.

A device in your IDE

“SimWin · Windows 11” shows up in VS Code, Android Studio and flutter devices, just like an emulator.

Hot reload and DevTools

Debug mode with hot reload, hot restart, breakpoints and Flutter DevTools, as on a Windows PC.

Simulator toolbar

Display scale from 100 to 200 %, window size, light or dark mode, and locale, including right-to-left.

Screenshots and recordings

Capture the app window as PNG or video, from the toolbar, the menu bar or the command line.

Profiles

Save combinations of scale, size, theme and locale, then switch between them in one click.

Plugins that compile

Windows plugin code is built with clang. Plugins that need Visual Studio-only tools are named, not left to fail silently.

Command line

simwin open, simwin screenshot and simwin doctor work in Terminal and scripts, no IDE needed.

Your project stays untouched

SimWin builds from a private copy. It never edits your files, pubspec or Git state.

How it works

Three steps, then it’s just another device

  1. 1

    Install and set up

    Drag SimWin to Applications and open it. Setup downloads the build tools (about 400 MB) and tests everything with a sample app. About five minutes, once.

  2. 2

    Pick the device

    Open your Flutter project in VS Code or Android Studio and choose “SimWin · Windows 11” from the device list.

  3. 3

    Press Run

    SimWin builds the Windows app and opens it in its window. Edit your code and hot reload as usual.

Select a device

macOSdesktop
Chromeweb
SimWin · Windows 11custom device

Debug console

Launching lib/main.dart on SimWin · Windows 11 in debug mode…

✓ Built my_app.exe

Connecting to VM Service at ws://127.0.0.1:55813/ws

Reloaded 1 of 731 libraries in 418ms.

Under the hood

What happens when you press Run

  1. Step 1

    Your project

    Copied to a private staging folder. The original is never changed.

  2. Step 2

    Compiled for Windows x64

    clang (llvm-mingw), CMake and Ninja, with Flutter’s Windows engine.

  3. Step 3

    my_app.exe

    The same debug build a Windows PC would produce.

  4. Step 4

    Runs on your Mac

    Through Wine, a compatibility layer, not a VM. Graphics go DXVK → MoltenVK → Metal.

  5. Step 5

    Connected to your IDE

    Over the Dart VM service: hot reload, breakpoints, DevTools.

The first build of a project takes a few minutes, while SimWin fetches Flutter’s Windows engine files and compiles everything. After that, builds are incremental and hot reload takes well under a second.

Good to know

What SimWin is, and what it isn’t

Still do a final check on Windows. This is your real Windows build running under a compatibility layer, not Windows itself. Fonts, system dialogs (file pickers, printing) and some Win32 APIs can differ.

Debug builds only. Release and profile builds need Windows-only tools, so build the .exe you ship on Windows or in CI.

Visual Studio-only plugins aren’t supported yet. Plugins that need C++/WinRT, MFC, ATL, NuGet or WebView2 are left out of the build, and SimWin names them.

Rosetta 2 on Apple Silicon. Windows x64 code runs through Rosetta: fine for UI work and debugging, not for benchmarking.

Download

Get SimWin for your Mac

Signed with Developer ID and notarized by Apple. SimWin keeps itself up to date.

Or in Terminal

Downloads, verifies and installs SimWin, adds the simwin command, and runs setup.

curl -fsSL https://simwin.dev/install.sh | bash

Release notes and older versions are on the releases page.

System requirements

macOS
14 Sonoma or later
Processor
Apple Silicon (with Rosetta 2, which setup installs) or Intel
Flutter
Stable channel, 3.45 – 3.47
IDE
VS Code with the Flutter extension, Android Studio or IntelliJ, or just Terminal
Storage
About 3 GB after setup, plus build caches

FAQ

Questions developers ask

Is this a virtual machine?
No. SimWin doesn’t install or run Windows. It compiles your app for Windows and runs the .exe directly on macOS through Wine, a compatibility layer that translates Windows calls to macOS ones. That is why it starts in seconds and uses far less memory than a VM.
Do I need a Windows PC or a Windows licence?
No. Everything is built and run on your Mac. You don’t need Visual Studio either.
Does SimWin change my project?
Never. It builds from a private copy of your project in ~/Library/Caches/SimWin, and that is where any compatibility fixes are applied. Your files, pubspec and Git state are left exactly as they were.
Can I build the .exe I ship to users?
Not yet. SimWin makes debug builds for testing. Release builds need Windows-only tools, so build them on Windows or in CI.
Which plugins work?
Plugins whose Windows code is ordinary C++ work, such as path_provider, shared_preferences, url_launcher and package_info_plus. Plugins that need Visual Studio-only features (C++/WinRT, MFC, ATL, NuGet, WebView2) are left out of the build, and SimWin tells you which ones, so the rest of your app still runs.
Which Flutter versions are supported?
The stable channel: the newest tested version and the two before it (currently 3.45 – 3.47). SimWin always uses the Flutter SDK your IDE runs. Other versions usually work too; SimWin warns you if yours is outside the tested range.
Does it work on Apple Silicon?
Yes. Windows x64 code runs through Rosetta 2, which setup installs if needed. Intel Macs run it natively.
Does SimWin collect any data?
No analytics and no tracking. SimWin only goes online to download its build tools during setup, to fetch Flutter’s Windows engine files from Google, and to check for updates. Problem reports are sent by you, from your own mail app. See the privacy page.
How do I uninstall it?
Follow these steps: remove the IDE device, delete the app and delete SimWin’s three folders in your Library.

Found a problem? Tell us.

In SimWin, choose Help ▸ Report a Problem…. It writes an email to us with the details we need attached, or opens a GitHub issue. Plugins that don’t build are especially useful to hear about.