Offline-First Mobile Apps using Realm

Hey, does anyone have experience using Realm to make offline apps (read and write capabilities)? How do you feel about the development model — do you think it’s a good option?

Hi!

Thanks for your first post and welcome to the MongoDB Developer Community! :wave:

I know it’s going to sound definitely as biased as a MongoDB employee but I did use Realm as an offline database before I joined the company and it’s one of the main reasons that made me enjoy the technology so much and why I decided to join years later.

I wanted to build a database integration for an app I was developing on iOS. Other options like Core Data had a big learning curve and were not for me. So Realm was the way to go and I didn’t regret it because the database functionality integration was a walk in the park.

Realm being an offline-first mobile database solves a lot of problems such as local storage, which is quite simple and lightweight, and you can access objects using the native query language of the platform you’re using. Also considering that your objects will always reflect the latest data stored in the database you can subscribe to changes, which will make it easier to keep the UI to date.

Another good point is that if you ever decide to integrate Sync between devices, it’s quite easy to do and Device Sync does a lot of heavy lifting behind the scenes, so you don’t have to worry regarding conflict-solving between devices.

You can find more information in our Realm documentation.

I hope this solves your question and don’t hesitate to let me know if you have additional questions or concerns regarding the details above.

1 Like

Welcome to the forums.

I feel great about the development model. However, I also fee great about other tools as well. If you want some additional feedback we should have a basic understanding of your use case.

Not all tools are a good fit for all cases.

Can you perhaps add some brief additional information about how you’d be using Realm in your app? What’s your coding platform? Single user? Multi-User? Multi-Tenant? Are you going to Sync in the future? Do you need Authentication? How about file storage?

Jay

1 Like

Thanks so much, Jay. I will dm you.