Atlas Device Sync
You're developing a mobile app. Your users want their data saved in the cloud and accessible from their other devices. Network access on a mobile device can be intermittent, so you write data locally on the device first. A background process then synchronizes the data to the cloud and resolves any conflicting writes.
Atlas Device Sync provides all of the above, so you can build better apps faster.
Watch our Intro to Atlas Device Sync Learning Byte to learn more.
Key Features
Realm in the Front, MongoDB in the Back
Atlas Device Sync is a bridge between client apps using the Realm SDKs and a MongoDB instance running in Atlas. Realm is a lightweight database optimized for mobile development.
Robust & Secure
Device Sync handles conflicts for you, so you don't have to write complex custom code to resolve conflicting writes from multiple clients. A user-based permissions system lets you control who can access which data.
"Always-On" Experience
Realm Database and Device Sync seamlessly handle intermittent connectivity so users can continue using your app regardless of their current network status.
Get Started
Launch a Template Starter App
The best way to start using Device Sync is with a template starter app. In the Atlas App Services UI, under the App Services tab, you can select a template. Atlas configures a backend instance and gives you the frontend code for a selection of platforms.
Follow a Device Sync Tutorial
The mobile app tutorials guide you through building a feature on top of a template starter app with Atlas Device Sync.
Explore the Device Sync Documentation
Maintain Data Integrity with Schemas
Define your application data model with standard schemas that you can use to validate data and generate language-specific classes. Read the Sync Data Model Overview to get oriented.
Configure & Enable Device Sync
Whether you based your app on one of our template apps or started from scratch, at some point you'll want to configure Sync specially for your needs. Read more: Configure and Enable Atlas Device Sync.
Protect User Data with Permissions
Device Sync provides a user-based permissions system that lets you control who can access which data. To learn how to set up permissions for a variety of real use cases, check out the Device Sync Permissions Guide.
Handle Errors
Develop a robust app that can handle schema changes and data recovery scenarios with the Client Resets documentation. Troubleshoot other errors and edge cases with the Sync Errors reference.
Go to Production
Test your app under a simulated load with the Sync Production Load Testing guide, then get your app ready to ship with the Device Sync Production Checklist. To understand how costs scale with usage beyond the free tier, refer to the Billing page.
End-to-End Security
On Device
Encrypt sensitive data in Realm Database files with the encryption APIs.
Built-in user authentication providers include anonymous, email/password, API key, Custom Function, Custom JWT, Facebook, Google, and Apple.
In Flight
Device Sync encrypts all network traffic using Transport Layer Security (TLS). Document and field-level permissions determine which data may be synced to the device.
In the Cloud
MongoDB Atlas has features that meet essential compliance standards:
Encrypted storage volumes
Network isolation
Role-based access management
ISO, SOC, PCI, HIPAA, HITRUST, VPAT, GDPR, CSA