We’re excited to announce the general availability of Flexible Sync, the next iteration of Atlas Device Sync, MongoDB’s synchronization solution between the popular client-side database Realm and MongoDB Atlas. Flexible Sync introduces significant architectural enhancements to Device Sync that improve developer productivity and further reduce the complexity of managing separate data technologies when connecting mobile and embedded devices to the cloud.
At its core, Flexible Sync enables synchronization of only the data that’s relevant to a given user or device. For example, Wanderland, a new virtual reality social media application, needed a solution that synchronized data across devices in real time, allowing users to publish geo-located AR content and discover content created by their peers. “The new Flexible Sync feature in Atlas Device Sync elegantly solves geo-partitioning issues by allowing us to only synchronize nearby spatialized content relevant to each user,” Jonathan Thorpe, the lead VR/AR developer at Wanderland, says.
Additionally, we are expanding our device platform support with the GA of our Kotlin SDK, which includes Kotlin Multiplatform support, and the beta release of our Flutter SDK.
Increase developer productivity with query-based sync
With Flexible Sync, we are introducing a new way of configuring sync that is more analogous to the way developers sync and code. Now, developers will be able to define synced data using language-native queries that can dynamically update based on user-defined inputs, which means that as a user updates app filters or preferences, the data being synced to the device will update efficiently and in real-time.
Handle sensitive information with field-level permissions
The introduction of Flexible Sync also means data synchronization can be tailored and limited based on a user’s role down to field-level granularity. This is an industry-leading feature that is especially critical for apps handling sensitive PII or PHI data, ensuring that not only is protected data not visible in the UI, but it is never on the synced device to begin with.
Support write-heavy workloads with asymmetric sync
We recognize that with the need for real-time visibility, there is an increasing occurrence of write-heavy workloads that require low-latency sync from embedded devices to the cloud. The new release of Flexible Sync offers full support for asymmetric sync from devices to the cloud that is optimized for write-heavy workloads and syncs directly to time-series collections on MongoDB.
New language, framework, and platform support (Kotlin, Flutter, MAUI, and WatchOS)
Alongside the release of Flexible Sync, we are announcing support for several new mobile frameworks and platforms:
-
Realm Kotlin – Now GA: Prior to this release, Android developers used our Realm Java SDK within Kotlin apps. The new GA release of the Realm Kotlin SDK—that includes full Kotlin Multiplatform support—offers idiomatic, Kotlin-first APIs for developers using Kotlin in their mobile apps.
-
Realm Flutter – Now in beta: As Flutter support is the top requested feature for Realm, we are excited to confirm the beta release of our Realm Flutter SDK, which will allow developers to begin testing sync in their Flutter applications.
-
Realm .NET – Now with support for MAUI and Unity: The Realm team recently released MAUI support into beta for developers looking to take advantage of Microsoft’s newest framework, in addition to the Unity support that was added last year.
-
Realm React Native – Now with support for Hermes: The latest release of Realm React Native includes support for Hermes to help JS developers keep their mobile applications fast and lightweight.
Getting started with MongoDB Atlas Device Sync
If you’re ready to start building with Device Sync, getting started is easy. Sign up or log in to your cloud account, deploy an App Services app, select your sync type, and dive right in.
We’re excited to see what you build! Join our community forums to share your project, leave feedback, ask questions, and connect with other developers using MongoDB Atlas Device Sync and Realm.