The AWS General Release of Amplify Flutter
The Amplify Flutter was released last year in a preview version and now became fully available in an official launch. The official launch came with new features, that were not on the preview version, like new APIs, with GraphQL API and REST APIs, the Amplify DataStore that will allow developers to work with cross-user data, and the Hosted UI with a streamlined way to add authentication pages on the apps.
The Amplify Flutter is the conjunction of the AWS Amplify and the Flutter, bringing together the Flutter ecosystem and the power of the AWS for the customers that have already invested it in the past.
A Deeper Look Into the New Features
The preview version of the Amplify Flutter in August 2020 did not come with the three new features introduced with the general release. They were developed to facilitate the process of building incredible Flutter apps.
The first feature is the addition of a GraphQL API with GraphQL API and REST APIs backed by the AWS AppSync.
Second, was the Amplify DataStore that gives the developers the possibility to use a programming model to clout shared and distributed data without needing to write additional code for online and offline scenarios. So they will be cross-user data but as simple as local-only data.
And the third feature was the Hosted UI that allows the implementation of authentication pages in apps, that works with the Amazon Cognito and other social media that requires social identity, like Facebook, Google and Amazon. This way, it’s possible to add a login page on the app without needing to embed the SDK for Cognito or a social provider.
Working With the Amplify Flutter and AWS Features
The Amplify Flutter allows the synchronization with the AWS in three different ways:
- Authentication: The Sign-Up, Sign-In, and Multi-Factor Authentication protocols can be easily enabled with the Amplify Flutter. It gives the apps the needed authorization to all the other Amplify categories. The Cognito user pools and identity pools support already comes with it.
- Storage: The user content comes in a public, protected, or private storage bucket, so they can be uploaded, downloaded and deleted with the built-in support for the Amazon Simple Storage Service.
- Analytics: With the help of Amazon Pinpoint, it’s possible to easily collect tracking data for both authenticated and unauthenticated users. There also the possibility of record events and the custom metrics will make the analytics very easy to manage.
The Amplify DataStore
The Amplify Flutter DataStore will allow developers to have a more accurate and easier synchronization of the objects. When working on multiple projects or for different clients it’s possible that they update the copies of the objects. With the new DataStore, the objects will be automatically converge into different versions with the help of conflict detection and resolution strategies.
This feature is by far the most helpful and will definitely save time for developers, as they won’t need to locally store and sync the data back to the cloud, specially when the mobile version has intermittent connectivity, and it’s not possible to connect it to the API endpoints — the DataStore will solve the problem both on the offline and the online scenarios.
By Gary Bernstein