Upgrade from Stitch to Realm - Web SDK
Overview
If you have an existing app built with the Stitch SDK, you should migrate your app to use the new Realm SDK. While much of the application logic and flow of information hasn't changed, there are a few changes to how the new SDK connects to the Atlas App Services backend.
Note
This page presents how to migrate from the MongoDB Stitch Browser SDK to the Realm Web SDK.
If you are looking to use the Realm JS SDK to build Node.js applications, check out the Upgrade from Stitch to Realm Node page. If you are looking to develop React Native apps, consider our Upgrade from Stitch to Realm for React Native page.
Changes
What's Changed? | Solution |
---|---|
The backend app connections previously accessed via StitchAppClient are now available through Realm.App. Use the | Migrate all occurrences of |
StitchUser was previously the interface to access application users, but now it is Realm.User. | Migrate all occurrences of |
The login API has changed from stitchAppClient.auth.loginWithCredential() to Realm.App.logIn() | Rewrite all authentication logic to use the new login API. |
The API to log users out has changed from stitchAppClient.auth.logout() to Realm.User.logOut(). | Rewrite the application logic to log out using the |
The Stitch SDK required developers to import authentication credentials from the | Replace imports of authentication credentials with method calls for each respective authentication provider through the |
The API to call a Realm function has changed from stitchAppClient.callFunction() to app.currentUser.functions.<MyFunction>(). | Replace server function calls with the new API method, |
The interface to the MongoDB Data Access API, containing objects like MongoDatabase, and MongoCollection, has changed. Through Stitch, passing the RemoteMongoClient.Factory and the string "mongodb-atlas" to StitchAppClient.getServiceClient() creates a remote Mongodb client. The Realm JS SDK creates a remote MongoDB client through the Realm.User.mongoClient method on the user object. | Replace all |
Convert references to Third Party Services (AWS or Twilio) in your Stitch Application to Realm functions in your Realm application using the corresponding npm packages. For more information, see Add External Dependencies. |