Flutter in 2023: An Overview
Engineering
Flutter
Update
Summary
Flutter's 2023 Strategy focuses on enhancing app quality across all platforms, integrating with Google's ecosystem, and improving the developer experience. The plan emphasizes robust multi-platform support, streamlined developer resources, and community and ecosystem growth. Challenges include advancing Dart, boosting performance, and expanding community diversity to maintain a high-quality ecosystem for developers.
Key insights:
Expanding Multi-Platform Capabilities: Flutter now supports not only mobile but also desktop and web platforms, addressing previous issues like slow startup times and integrating better with web standards.
Developer-Centric Enhancements: Prioritizing improvements in the developer experience by refining documentation, increasing engineering velocity, and focusing on UI fidelity to reduce technical debt and address customer issues effectively.
Strengthening Community and Ecosystem: Flutter aims to nurture its thriving package ecosystem, encourage community contributions, and enhance support for developers, especially those new to Flutter.
Deepening Google Integration: By fostering deeper integration within Google’s own ecosystem, Flutter plans to drive more internal adoption and improve its utility across Google’s broader product strategy.
Addressing Future Challenges: Key challenges for 2023 include migrating the ecosystem to null safety, optimizing performance across all supported platforms, and expanding the diversity of the Flutter community.
Introduction
Flutter is an open-source, portable UI framework that allows developers to create beautiful, high-quality apps for any platform from a single codebase. It has become one of the most popular cross-platform application UI frameworks since its launch.
Google's mission with Flutter is to develop the most popular, highest-quality, and highest-productivity UI toolkit for developers. In this article, we will explore the Flutter 2023 Strategy document, released by the Flutter team, which outlines their plans for this year and what the future holds for Flutter.
Flutter has achieved a powerful position in the developer ecosystem, with over 700,000 apps in the Play Store built with Flutter. Additionally, one in five new apps on the Play Store uses Flutter, more than all other cross-platform frameworks combined.
The Flutter team aims to create top-quality apps on any platform without any compromise. To achieve this goal, they will emphasize app quality and ease of transition across mobile, web, and desktop, reduce frictions in the developer experience, and build on-ramps for new developers to Google.
Roadmap
The Flutter and Dart team plans to deliver stable releases on a roughly quarterly basis, delivering on the goals expressed above. Flutter Forward, in January 2023, was the first moment of the year, which sowed the seeds for the investments the team will make through the remainder of the year.
Additionally, here’s what the flutter team has on agenda for this year:
Multi-Platform Support
Flutter is now supported on multiple platforms, including Windows, macOS, and Linux, as well as growing maturity on the Web and with embedded devices. With an addressable market of 12.8 million developers, desktop provides opportunities for Google to bring many new developers to its ecosystem.
Moreover, the team has made substantial progress at addressing the impediments Flutter faced in its early releases, including slow startup performance and gaps in accessibility and web integration. Customers such as Rive, FlutterFlow, Formula 1, and Google FamilyLink are now using Flutter in production on the web.
User-Centric Approach
The Flutter team believes in "focus on the user and all else will follow." They emphasize developer experience, making it important for them to be a good partner to other teams in Google. Their goal for app developers and publishers is to draw them more deeply into a mutually beneficial relationship with Google.
They want customers to have a delightful and trustworthy experience with Flutter, leading them to be more likely to adopt other technologies. By setting a vision that customers believe in, they encourage them to join them on their journey.
Fundamentals
Maintaining the fundamentals is another key area of focus for the Flutter and Dart team in 2023. This includes documentation, engineering velocity, UI fidelity, addressing technical debt, and responding to customer issues.
The team plans to invest in improving documentation by refining existing content, adding more samples, and investing in platforms like dartdoc that increase velocity. Additionally, the team will work to address long-standing infra debt and customer issues to improve customer satisfaction.
Community Support
New feature work should be heavily scrutinized, and the team will be careful about adding new surface area because of the challenging macroeconomic environment and Google-wide mandate to sharpen its focus.
The Flutter team also aims to create a self-sustaining ecosystem that empowers developers to create beautiful and high-quality apps. To accomplish this, they will continue to support and build upon their thriving package ecosystem while enabling more community contributions and third-party packages.
Developer growth
The developer growth focus area will see the team continue to invest in features that help developers to build high-quality apps using Flutter and Dart. Key areas of focus include improving performance, enhancing the developer experience, and investing in new tooling to help developers build apps more efficiently. In addition, the team will work to expand the Flutter and Dart community by offering more resources and support to developers who are new to the platform.
Maximizing Flutter & Dart's value to Google
Flutter and Dart are not only valuable to developers but also to Google as a whole. To this end, the team will continue to support the adoption of Flutter and Dart within Google. This includes implementing features requested by large internal teams, supporting internal plugins and integrations, and internal standards for accessibility and performance.
The team aims to broaden Flutter's ability on the web to provide UI-rich features embedded inside existing internal web applications using other frameworks such as Angular. Flutter as an on-ramp for Google Flutter serves Google by building a large and satisfied customer base, making them more receptive to other Google products and technologies.
The team will continue to build pathways to help developers succeed with Google while refusing to create customer-hostile choices for short-term gain. Specific examples include offering packages like FlutterFire for Cloud and Firebase, giving iOS developers a path to build on a supported Google stack that also targets Android, partnering with Geo to grow its maps plugin, and partnering with Ads to broaden mobile ad formats.
Challenges
Despite its success to date, there are still challenges ahead. The Flutter team will need to migrate its ecosystem to null safety without fragmentation, continue to advance Dart tastefully and carefully, and eradicate jank and other performance impediments with minimal customer effort. They also need to deliver unparalleled performance on all platforms, reduce or eliminate friction when calling system APIs, build in supply-chain security without impeding non-Google contributors.
It is also important to build an ecosystem that is self-sustaining, and it can maintain and grow its reputation for quality. Additionally, they need to win a reputation with design agencies and iOS developers, close API and package divergences between platforms, grow the diversity of its community, and support or integrate emerging ways of building UI, such as ML code completion and low-code tools.
The Way Forward
The Flutter 2023 Strategy document shows that the Flutter team at Google is focused on improving the quality of Flutter and making it a more accessible and seamless development experience.
They aim to make Flutter the go-to framework for any app development needs, on any platform. With the challenges ahead, the Flutter team is determined to create a self-sustaining ecosystem that empowers developers to create beautiful and high-quality apps without any compromise.