News

New and Successful Experiment of webOS with Flutter for Better Performance and Playful Experience

Category: webOS TV Platform

At LG, we've always pushed ourselves to offer the industry's highest quality products, from TV panel quality to overall durability, all the way down to the software and user experience of interacting with an LG TV. To continue delivering the highest quality products, we began revisiting our on-device software back in 2021 with an aim toward improving app start-up and runtime performance.

LG TVs run on webOS, which, as the name implies, means apps are written in JavaScript. Most of our apps use React. When we first adopted React, we were pleased with the development productivity it provided, but sadly its initial performance was subpar in terms of start-up time, memory consumption, and responsiveness. After significant and complicated optimizations we reached performance benchmarks that were good enough, and yet we desired a new technology that was both fast and simple.

For our new experiment, one engineer proposed rewriting our Japanese Electronic Program Guide (EPG) in Flutter. This was an appropriate candidate for exploration, because a unique layout had already forced our Japanese EPG to be a completely isolated app with a distinct codebase. Of course, this nicely limited the scope of the experiment.

LG weBOS - Flutter Hackathon 2024

To our delight, our very first prototype with Flutter easily exceeded our target benchmarks! Without any optimization whatsoever, our Flutter rewrite launched twice as fast as our original app, consumed less runtime memory, and felt more responsive and playful to use. This Flutter app is currently included in 2024 webOS TVs sold in Japan.

With our Japanese EPG rewrite a success, we have decided to rewrite more apps using Flutter, including the primary software that users interact with while using an LG TV. Nothing could be more critical than nailing this rewrite, and to our delight again, our first prototype with Flutter delivered the best benchmarks that app had ever seen. Flutter gave us increased developer productivity, better runtime app performance, and as we've gone on to discover, a smoother experience finding and hiring talented developers.

We will include Flutter version of the apps in our 2025 televisions globally, and even more Flutter apps in 2026. The Flutter-powered webOS versions will also run on previous models via webOS Re:New program. In total, that will place Flutter in tens of millions of LG televisions already in consumer homes around the world.

Looking forward, we aim to support a broad range of Flutter apps on LG TVs through webOS. We are planning to work with multiple parties on a closed beta to develop custom apps with Flutter. Currently, we can recompile most Flutter apps' source code to run successfully on webOS. In time, we hope to release tooling to help all Flutter developers target LG televisions. Specifically, we are excited about Flutter's potential to bring performant casual gaming directly to LG TVs.

At LG, we're excited to both contribute to and benefit from Flutter and its ecosystem, and we are excited about how it will ultimately improve our products. For Flutter developers looking to step into the webOS ecosystem, we have exciting opportunities open. Please visit LG webOS Hackathon 2024 to participate in our hackathon and join us in shaping the future of Flutter and webOS!