This is why I fully moved to flutter. Everything, including styling, is just a widget. It’s surprisingly liberating to write boring C# looking code that accurately describes a UI component without inheritance, overrides, style compiling, etc
Agree with you on the runtime. Things are better with wasm and wasmgc, but still you can’t use flutter for any website that cares about SEO.
However for the “app” part (after sign in) it’s a one-time download, cached by service worker, only takes a split second.
It would be really nice if flutter could produce a AOT compilation of the “semantic” HTML for the initial page and then hydrate it. Then it’d be pretty similar to waiting for JS bundles for interactivity.
My main gripe is that the DOM backend never took off. The WASM <-> DOM interop is cheaper than ever, especially if you bundle operations so that you don’t need to cross it as often. Still, they decided to implement everything from scratch :-(
Same, as C# dev I love Flutter.
However I just know in my bones that Google will ditch it some day. It's been too many years without significant adoption and it will stop making sense in the corporate spreadsheet one day.
> Everything, including styling, is just a widget.
And that's the downside.
What would be just two or three nested <div>s in HTML+CSS turns into several screens of widgets, making navigation and debugging much harder. I once had an issue with extra margin in one of Flutter's built-in widgets and spent hours trying to figure out why - without success.