Why the Realm for React Native is still Beta?

I’m using Realm with my React Native application and MongoDB Realm SDK version for React Native is realm@10.0.0-beta.12 can I use this for production-ready application?

In this instance, it’s safe to assume that the version is production ready, as in we’re unaware of major issues that will corrupt or break when out of beta and in production. It’s still a beta version, so we do reserve the “right” to make breaking changes to the API, but we don’t expect to. General availability is expected towards the end of the year.

2 Likes

@Shane_McAllister Respectfully I disagree with you. I am making a simple application at this time and very basic features in the Node SDK are not working, such as Facebook and Google authentication or even something as simple as printing a Realm object’s details to the console.

See for example these GitHub issues

And many more on the github repository.

I don’t think it’s responsible to recommend that this software is production-ready when basic authentication features or printing objects to the console is not supported. It appears that there are some growing pains to sort out from the migration from Stitch.

It look me weeks of development to realize that Realm was in beta; the documentation does not make this clear.

1 Like

@John_Saigle To be fair, I believe Shane was saying that we don’t foresee any major breaking changes with the local Realm SDK API. Production ready is really a call that only you, as the product owner of your app, can make. There are a myriad of apps on the Apple/Play store that are compiled with beta libraries and MongoDB Realm has several customers already in production even though it is beta. So it is “production-ready” for those customers but perhaps its not for you - which is why we apply the beta tag, to serve as a warning.

The Google OAuth issue you linked to is actually because of a hard-break in how Google encodes their tokens - we are not the only platform running into this problem. We are actually meeting with the Google engineering team next week to rectify this.

The issue with not being able to print an object is an unfortunate side effect of how Realm works as an embedder with the JS VM and uses reflection to invoke native functions. There is a simple workaround, you can use toJSON() to print the object - in the future we can look into ways of improving convenience methods for developer ergonomics. We could not embed into the JS VM which would give you the ability to console.log() Realm objects - but then this would lose all of the magic that makes Realm great - such as inferring your database schema from your class definitions, live objects, the notification system, etc. - to us it seems like a fair tradeoff but we are always looking for ways to improve.

1 Like

@Shane_McAllister thanks for the response, And I’m ready to start building my app with Realm.

1 Like

Thanks for replying @Ian_Ward. I’m happy that there are solutions underway. I’ll use toJSON() going forward.

This topic was automatically closed 5 days after the last reply. New replies are no longer allowed.