🎉Celebrating 25 Years of Tech Excellence and Trust - Learn More

What’s New in Google’s Flutter 3.10 and Dart 3: A Dive into the Newest Update

Published : May 18, 2023
Flutter 3.10 Update

Quick Summary: Google has launched the latest Flutter – Flutter 3.10 version, accompanied by major updates to its programming language – Dart 3. Flutter 3.10 UI toolkit has better design and Mac/iOS enhancements for mobile, web, and desktop applications. You will find Impeller is PROD ready for iOS, Dart 3, x3 WEB Performance and more with Flutter 3.10. That’s many more than this. Let’s dive deep into this detailed guide – Introduction to Flutter 3.10.

Unleashing the Power of Cross-Platform Development with Flutter 3.10 and Dart 3.

Welcome to Flutter 3.10.

Wait is over.

The latest release of Flutter, Google's popular UI toolkit, brings with it an array of exciting updates and enhancements, solidifying its position as a top choice for building stunning and performant cross-platform applications.

Recently, Google released its latest version of Flutter – Flutter 3.10 with incredible new features and updates on 10th May 2023 for the mobile, web, and desktop applications, with design and macOS/iOS enhancements.

Google also announced the game-changing release of Impeller for iOS, a major update to the programming language. In addition, Dart 3 previews WebAssembly (WASM) compilation, making null-safe code mandatory, and a whole bunch of Web enhancements that will make your Flutter applications run up to 3 times faster on the web.

This time Google – Flutter team comes with many promising features and more updates like better DevTools for easier app profiling, enhanced Material 3 widgets, and support for SLSA Level 1 to manage potential security risks.

Build Unbeatable iOS, Android, and Web Apps Faster Using Flutter

Talk to an Expert

Google’s largest UI software development kit, Flutter, comes with the latest version under its primary Flutter 3 version, which is Flutter 3.10.

As a cross-platform development company, we have identified that Flutter 3.10 comes with its stable version, accompanying Dart 3, and many enhancements to the web, mobile, graphics, security.

Stick with us as we are going to give you a quick tour of all these updates and features so you can get an overview of the best of the best in Flutter 3.10.

On This Page
  1. What is New in Flutter 3.10?
  2. Embrace the Goal of Flutter with Radixweb

What is New in Flutter 3.10?

The product manager working on Dart and Flutter stated, “With 100% null safety in Dart, we have a sound type system.” Furthermore, he also added that, “You can trust that if a type says a value isn’t null, then it never can be null. This avoids certain classes of coding errors, such as null pointer exceptions. It also allows our compilers and runtimes to optimize code in ways it couldn’t without null safety.”

Well, isn’t it good news for Flutter developers?

Now is the time to understand all the latest features and updates of Flutter 3.10 here.

  • Dart 3
  • Support for SLSA Level 1
  • Enhanced Version of Flutter for Web
  • Enhanced DevTools
  • Production-ready Impeller for iOS

Dart 3

Flutter 3.10 introduces an amazing addition to its most popular programming language – Dart 3. The significant improvement in Dart 3 is the complete removal of non-null-safe code, which guarantees a completely secure and error-free experience in this 100% safe language and removes the common hazards of nullable languages.

Dart 3 also adds several language improvements, such as the introduction of Patterns. It is simple to work with structured data thanks to this capability. You will find a practical demonstration of a function that conveniently returns two values at once in the official Dart 3 blog post.

(String, int) userInfo(Map<String, dynamic> json)

{

return (json['name'] as String, json['height'] as int);

}

Therefore, there will be no need to create a specific class for that purpose or to encapsulate several values within a collection.

Additionally, new class modifiers like interface class and sealed class offer increased capabilities, while the modified switch statement enables the systematic dismantling of structured patterns.

Support for SLSA Level 1

Support for SLSA Level 1

Security plays an important role when working with open-source code. That’s the reason the Flutter team has kept this factor in mind while launching Flutter 3.10.

Flutter 3.10 now supports Supply Chain Levels for Software Artifacts (SLSA), Level 1. This implementation enables build scripts to work and execute on trusted platforms. Also, it offers many security features, including:

Scripted Build Process: The Flutter build scripts now enable automated builds on reliable build platforms. Constructing on protected architecture increases supply chain security because artifact tampering is prevented.

Multi-party Approval with Audit Logging: Workflows for Flutter releases only go live with multiple engineers' approval. Every execution produces auditable log records. These changes ensure that no changes can be made between the production of the source code and the artifacts.

Provenance: This indicates that the framework release artifacts were created by reliable sources using expected contents. Each release offers links to view and verify provenance on the SDK archive.

Additionally, this work enables the team to move closer to SLSA L2 and L3 compliance. These two levels concentrate on safeguarding artifacts both during and after the build process.

These steps have been taken in reaction to recent security breaches and flaws found in other open-source initiatives, such as the NPM ecosystem. The Flutter team is taking proactive measures to strengthen the ecosystem's security, making it more resilient and dependable for both developers and end users.

Enhanced Version of Flutter for Web

If you have utilized Flutter to build Windows applications, there’s good news for you.

There have been considerable improvements to the application loading time of Flutter for the web.

One significant accomplishment is the size decrease of CanvasKit, the largest Flutter for the web component, which is now one-third of its original size.

Moreover, you can now eliminate unused fonts, reducing the overall weight. Complete support for easily integrating pure HTML components within the application is now available with Flutter 3.10.

Furthermore, developers may now use well-known Dart code to generate beautiful visual effects thanks to the inclusion of fragment shader support.

This entails allowing garbage-collected languages like Flutter to be included in the standard. Initial testing has already shown an improvement in performance upto three times. This intriguing development holds enormous promise for web applications developed with Flutter whenever WASM is eventually made available to the public.

Utilize Flutter for Web Development, From Installation to Creating Layouts and Animations

Flutter for Web

New Material 3 Widgets

The latest version of Flutter – Flutter 3.10 comes with better support for Material 3. It allows you to create color schemes based on either a base color or an image. You will also find some significant improvements in various widgets, like DropdownMenu, NavigationDrawer, TabBar, SnackBar, and many more in Material Design components.

Navigation Drawer

(Navigation Drawer)

Also, the Flutter team has come up with enhanced support for iOS/macOS. This allows users to utilize Apple’s Spell-checking feature within editable text widgets, along with a new checkbox and radio button design that complements Cupertino aesthetics. Also, you will find many animation improvements specific to Apple platforms.

Spellcheck Support for iOS

(Spellcheck Support for iOS)

Refining Cupertino Animations

(Refining Cupertino Animations)

While considering Apple devices, this Flutter version now enables wireless debugging directly to iPhones and iPads. However, this functionality was previously available only in Xcode.

You can check further on its official website – Material 3.

Enhanced DevTools

The development tools have also undergone a number of improvements in this Flutter 3.10 version, enabling developers to assess and improve the performance of their apps more efficiently.

The memory page has also received new features. The addition of the Diff tool makes it possible to evaluate the effects of particular interactions by comparing memory use before and after specific interactions. Furthermore, heap exploration via the console has been streamlined through enhancements.

With the addition of Material 3 widgets, the DevTools user interface has been updated, improving usability and adhering to current design guidelines.

The outdated trace viewer has also been replaced with the open-source tool Perfetto. In addition to introducing capabilities like pinning threads of interest, dragging and picking multiple timeline events, and using SQL queries to extract certain timeline data, Perfetto excels at managing big datasets.

Production-ready Impeller for iOS

With the release of Flutter 3.10, Skia has been replaced by Impeller. It has become the primary rendering engine on iOS. This new rendering engine offers improved performance to animations and removes the troublesome shader compilation issues that caused janky animations and an unpleasant visual experience.

However, Impeller utilizes a tessellation algorithm to eliminate the need for shared compilation during graphics rendering to achieve this outcome.

Impeller uses the cutting-edge capability of next-generation GPUs to generate various forms and colors on the screen smoothly while maintaining a high framerate. It has been meticulously designed from the ground up to especially satisfy the needs of Flutter.

All iOS apps created with Flutter 3.10 use Impeller as their default rendering engine. A preview version of Impeller for Android is also planned for future releases, according to the Flutter team, who have also highlighted their ongoing efforts in this regard.

Accelerate the Loading Speed by 60 FPS and Deliver Native Performance with Dart using Flutter

Choose Flutter App Development

If you are planning to install the latest version of Flutter 3.10, you can check its guide at docs.dev.flutter, and those for the Dart SDK at dart.dev.

The stable version – Dart 3 is now here, which offers three major improvements:

  • 100% reliable null safety prevents runtime errors from nulls, allows for lower compiled output, and boosts efficiency. 99% of the 1,000 packages for Dart currently supported by the dev package manager support null safety.
  • Modern programming uses new language features that support structured data with records, destructuring, pattern matching, and abstract data types.
  • Class modifiers, a "power user" feature that allows package owners to more clearly explain an API's capabilities.

Embrace the Goal of Flutter with RadixwebThe prime goal of Google for Flutter is to provide five core characteristics: beauty, control over every pixel on the screen; speed, powered by hardware-accelerated graphics; productivity, with workloads supported by hot reload and dev tools; portability, leveraging a single shared code base for multiple platforms; and universal availability, by being free and open-source.Well, this is not everything that Flutter has come up with for the front end development. The entire Flutter community and Google team have done an amazing job facilitating the development experience and improving it through regular updates.As a renowned Flutter app development company, we are very excited about Flutter 3.10 as it brings many benefits to us. This is the right to migrate your application to Flutter's latest version – Flutter 3.10 and kickstart your app development project. So, if you want to explore Flutter new version or need help developing cross-platform applications, we have you covered. Connect with us and share your requirements.

Don't Forget to share this post!

Jigar Shah is the Sr. Content Lead at Radixweb. He is an avid reader and tech enthusiast. He’s capable enough to change your world with his words. A cup of tea and a good book make an ideal weekend for him.