-
Run the example app using the Butter tool:
cp example dart run ../bin/butter.dart run -d butter
-
Build engine
-
Copy the locally built engine to the
example/butter/Flutter/ephemeral
directory:cp C:\Code\f\engine\src\out\host_debug_unopt\flutter_windows.dll C:\Code\butter\example\butter\Flutter\ephemeral
-
Run the example app once using the local engine:
cd example flutter run -d windows --local-engine host_debug_unopt
-
Now run the example app using Butter:
dotnet run --project butter/Runner
- Hot reload
- Error on exit
- Clean should remove obj/bin folders
- Plugins
- Messaging
- C++ plugins
- Pigeon
- Create template
- Figure out if template works if Butter supports multiple target platforms
- Maybe
Butter.Windows
should beButter
andButter.Windows.Bindings
should beButter.Windows
? - Maybe instead of packages we shove source files in the ephemeral directory?
- Maybe
- https://github.com/LiveOrNot/FlutterSharp/blob/8b24bdf14465c090b53ecc04c0c2c2598ae7aff3/FlutterSharp/Integrations/FlutterInterop.cs
- https://github.com/microsoft/CsWin32/blob/abb1b3de5bc2298cf3919a8cf724e7d18ea916c7/test/WinRTInteropTest/Program.cs#L79
- https://github.com/timsneath/win32_runner/blob/main/lib/src/window.dart
- https://github.com/sony/flutter-elinux