> This API seems too high level to produce polished products.
You can target whichever level of Flutter's APIs that you want. Almost the entire stack is in Dart, from the compositor, to the layout engine, to the animation logic, to the composition (widgets) layer, to the material widgets. If one layer is too high level, you can go down one level and work directly there instead.
The lowest level (the C++ layer) is literally just the Skia API, the Dart core APIs, a text rendering API, and a message-passing API for talking to your Java/Kotlin or ObjectiveC/Swift code. Everything else is layers you can directly poke at from Dart, written in Dart.
Thanks for addressing this specific issue (and hey, Hixie!) Obviously, I don't know much about the APIs so I'll take your word for it.
I guess my first objection (doesn't unify web development) stands, but that can be addressed in future (and presemably Dart will work just dandy with Web Assembly).
I assume my other objection can be addressed by simply building layouts directly and not using the autolayout stuff if you don't want.
> This API seems too high level to produce polished products.
You can target whichever level of Flutter's APIs that you want. Almost the entire stack is in Dart, from the compositor, to the layout engine, to the animation logic, to the composition (widgets) layer, to the material widgets. If one layer is too high level, you can go down one level and work directly there instead.
The lowest level (the C++ layer) is literally just the Skia API, the Dart core APIs, a text rendering API, and a message-passing API for talking to your Java/Kotlin or ObjectiveC/Swift code. Everything else is layers you can directly poke at from Dart, written in Dart.