Rookie Question About Flutter Requirements

I’m totally new to this and I’m betting that I simply have a misunderstanding here.

The first thing on the list of “Things I Need” is XCode for iOS development. But I can’t install it on my Windows PC or build iOS apps on Windows.

So this whole thing confused me right away. The whole selling point of Flutter is its cross-platform performance and not having to maintain two different apps.

How do I develop both Android and iOS if I can’t install/use iOS’s main development tool in the first place?

Surely I’m getting ahead of myself here but…am I expected to go out and buy a Mac?

Hi @droscoe. Flutter is designed to enable a developer to create cross-platform apps with a single codebase. Unfortunately, for some platforms you have to have the toolset for deploying to that platform; in this case iOS and macOS apps require developing on a Mac. Just as to run Windows apps one needs Windows.

For more details on platform requirements see the official Flutter docs at

There are services that you can develop on virtual machines, but I can’t speak to the costs in doing this.