Google Talks Progress on Flutter for Web

Posted on July 29, 2020 by Paul Thurrott in Cloud, Dev, Web browsers with 5 Comments

Google today provided an update on its progress bringing Flutter app development to the web, inarguably its biggest potential target market.

“Our vision for Flutter is to provide a portable toolkit for building beautiful experiences wherever you might want to paint pixels on the screen,” Google’s Mariam Hasnany writes. “As we’ve noted previously, we are deliberately app-centric with our framework and API choices, building a layered architecture that can scale across mobile, desktop, and embedded devices without compromising performance or quality. The web is at the core of our work. Flutter was originally born out of explorations from the Chrome team. It draws inspiration from the productivity and iterative development model of the web, and many of our engineers have years of experience building browser engines and web standards. We target the web browser because it is the beating heart of the internet: the most pervasive, flexible, and extensive app model that has existed in computing history.”

Flutter started off as a cross-platform app development platform for Android and iOS, but it has since expanded to include Windows, Mac, Linux, and web, and Google has plans to bring it to any device type with a screen over time. But the web is obviously a very important platform, and Google’s goal is to make Flutter for web both “true to the web and a no-compromise expression of Flutter.”

As with other versions of Flutter, developers will use the Dart programming language to create web apps using Flutter for web. The difference is what happens under the covers: The engine component of Flutter web translates Flutter scenes into HTML, CSS or Canvas, and renders frames onto webpages as trees of HTML elements. Google calls this the DomCanvas backend.

“It gives us the most compatibility across browsers with a compact code size and is well suited for apps with short lived sessions that require fast startup,” Hasnany says. The firm is also working on a CanvasKit-based backend that uses WebAssembly and WebGL and allows direct access to the low-level graphics stack enabling full parity with native Flutter. “For now Flutter gives you the option to choose which backend best fits your desired use case,” she adds.

As an example of what’s possible using Flutter for web, Google offers the Rive 2 Beta, which was completely rewritten in Flutter. You can sign-up now to test the app in beta.

“Rive is an animation design application that allows designers and developers to create high-quality assets to be easily integrated to any platform,” Hasnany explains. “In order to combine user interface with glitch-free animations in real-time, Rive requires heavy rendering of graphics and performant experiences across modern browsers as well as other platforms.”

Tagged with

Join the discussion!


Don't have a login but want to join the conversation? Become a Thurrott Premium or Basic User to participate

Comments (5)

5 responses to “Google Talks Progress on Flutter for Web”

  1. anoldamigauser

    How much data can Google collect on users of Apps developed with Flutter? They are surely not doing this for altruistic reasons.

    • eric_rasmussen

      In reply to AnOldAmigaUser:

      Not much more than they already do through Chrome and Android. They can collect basic analytics like everyone else does, but going beyond that would cause problems with GDPR laws.

      I think the bigger picture is that Flutter integrates really well with Firebase, a simplified interface for working with Google Cloud. The hope is that if people choose Flutter then they will also choose Firebase, and that could make Google some good money that is not based on advertising.

      I use both Flutter and Firebase and can testify that they're great. I used to use Azure with Xamarin and in my opinion Firebase is much easier to work with, especially Cloud Firestore. The way that it handles offline persistence is great and has saved me quite a bit of time.

  2. brduffy

    I like the idea of Flutter, but in practice I always find that cross platform environments like these present too many compromises. That may not be the case for a relatively simple application though. I don't expect the web to be a big use case for Flutter. I doubt web developers are going to invest in the learning curve when their existing toolkits can already target multiple platforms. On the other hand people already invested in Flutter development may move some of their mobile apps to the web and that might be a good enough reason for it to exists.

  3. rmac

    Until tonight I had no idea back in May Adobe XD built in support for Flutter. I've been trying to shout to MS to get some substantial partners under their design belt for Blazor (Maui to ensue). When I see articles like the afore and those such as the XD announcement, I can't help thinking MS are getting further and further behind.

    You can forget back end services. In the mobile space, whoever controls the UI shop window is king.

  4. rmac

    MS need to sign up with Adobe and create an XD-Blazor plugin.

Leave a Reply