Skip to content

Releasing for Windows

To submit an app to the Microsoft Store, you need an MSIX package. package:msix is a common way to produce that file from a Flutter Windows build. By default it runs flutter build windows with the Flutter SDK on your PATH, not Shorebird’s Flutter. That rebuild is not a Shorebird release, so patches will not apply.

Build with Shorebird first, then tell package:msix to package the existing output.

Step 1: Create a Shorebird Windows release

Section titled “Step 1: Create a Shorebird Windows release”
shorebird release windows

The Windows executable is written to build/windows/x64/runner/Release. See Create a Release for flavors, targets, and --flutter-version.

Add package:msix as a dev dependency if you do not already use it:

flutter pub add dev:msix

Then set build_windows: false in the msix_config section of pubspec.yaml:

msix_config:
  display_name: My App
  publisher_display_name: Example
  publisher: CN=00000000-0000-0000-0000-000000000000
  identity_name: com.example.myapp
  msix_version: 1.0.0.0
  store: true
  build_windows: false

build_windows: false skips flutter build windows and packages the directory Shorebird already produced.

Copy identity_name, publisher, and publisher_display_name from Partner Center (Product identity). With store: true, package:msix refuses to build if any of them is missing. The fourth part of msix_version must be 0 for Store submissions.

dart run msix:create

Submit the generated .msix file to the Microsoft Store.