Comment by tipiirai

1 day ago

Flutter fundamentally misunderstands web standards and separation of concerns. It imposes a custom rendering engine and widget system on top of the web platform, creating another layer of abstraction rather than leveraging native browser capabilities.

The web already has a powerful "canvas for any screen" - it's called HTML and CSS. Modern features like container queries, CSS grid, and view transitions provide sophisticated responsive capabilities without fighting against web standards.

Flutter's approach is precisely what we need to move away from - trying to solve web development challenges by building on top of the platform rather than understanding its inherent strengths. True standards-first development means embracing HTML's semantic structure, CSS's systematic design capabilities, and JavaScript's proper role in progressive enhancement.

Creating better interfaces doesn't require new abstractions. It requires deeper understanding of web standards and systematic design principles.

So how do you write a mobile app with HTML and CSS? Or a TV app? Or a car app? Or a watch app? Or a VR app?

The “one simple standard” falls apart when you need multiple platforms.

And honestly the document and document styling model wouldn’t work very well for these platforms.

Everything from “center a div” to “pinterest style masonry grid” is 100x easier in flutter.

Also, flutter is not “another abstraction” on top of web. The widgets don’t map to DOM elements at all. It is a completely orthogonal approach. All of the other web frameworks are indeed abstractions, but flutter is not.

Just curious, have you used flutter before? My impression is that you would like it because there is actually less abstraction. A widget just represents a paintable object on a canvas without any more indirection than you give it.