Realm Blog

Realtime Collaboration, Now For Every Mobile Developer

Since the release of the Realm Mobile Platform, we’ve seen how much more powerful an app becomes when developers add truly collaborative features, with multiple users sharing data with one another in realtime. The key element needed for this is client-defined access control, a feature that had been limited to paying Enterprise Edition customers. Today, we’re bringing access control to all editions of the Realm Mobile Platform, so that every mobile developer can bring realtime, multiuser collaboration to their apps – even with the free Developer Edition of the platform.

To make this all work, we’re launching new functionality in our Cocoa and Android client SDKs to expose the access control permissions on a Realm managed by Realm Object Server, so that your users can take control over who has access to their data.

It’s simple: a user who owns a Realm can share it with other users by creating a PermissionChange object, and specifying a user and a new permission for him (such as mayRead or mayWrite). After the PermissionChange object is created, that object gets saved to a special management Realm, and synced to your Realm Object Server, which will then apply the requested changes to the specified user.

Client Permission diagram

By using a dedicated synchronized Realm along with the PermissionChange object to communicate with Realm Object Server, this naturally takes advantage of Realm Mobile Platform’s objects-as-APIs approach. The PermissionChange will be synchronized automatically and Realm Object Server will react to the change and update the object with the status. Objects become the new API, making requests offline-first and immune to networking failures, and all you need to do is add some client-side code to make it work.

For more information regarding how to use the new APIs, check out the Realm Object Server documentation and relevant sections in the Cocoa and Android documentation. Then download the free Dev Edition, build something cool, and tell us about it – we’re eager to see what you can create.

Realm Team

At Realm, our mission is to help developers build better apps faster. We provide a unique set of tools and platform technologies designed to make it easy for developers to build apps with sophisticated, powerful features — things like realtime collaboration, augmented reality, live data synchronization, offline experiences, messaging, and more.

Everything we build is developed with an eye toward enabling developers for what we believe the mobile internet evolves into — an open network of billions of users and trillions of devices, and realtime interactivity across them all.

Get more development news like this