Over the last few months, our React Native team has been making substantial improvements to the React Native Chat SDK. Among bug fixes and other minor changes, this release introduces two new features: offline support and enhanced debugging capabilities.
Offline Support
Offline support has been one of our most requested features, and we’re thrilled to make this functionality available to our users. The development process was not easy, and we faced many technical challenges along the way. In a future article, we’ll outline the journey and the hurdles we had to overcome to make this functionality possible. We hope it can also serve as a helpful guide for you and your team.
This feature includes the following capabilities:
- Access to channels and messages when the user is offline.
- Faster startup times and loading since initial data is loaded from offline storage before performing any network requests.
Why it Matters?
By enabling offline support, you’ll increase user engagement and interaction.
Having the channels and their messages stored will ensure an improved user experience by loading the channel data from storage while data is being fetched from our servers. This functionality is especially helpful when a user is in an area with poor network connection.
Thanks to our sync API and constant updates from WebSocket events, the local DB stays continuously in sync.
Easier Debugging with Flipper
It is now easier to debug your chat application. With the Stream Chat Flipper Plugin, you’ll be able to do the following:
- View the authenticated client’s data.
- Inspect channels, including messages and thread list data.
- Analyze and copy all relevant Stream Chat data.
Why it Matters?
Improving the developer experience for those using our SDKs is one of the primary goals at Stream. We hope this plugin will speed up your development and debugging process and help you gain more information about data that is associated with Stream Chat.
Migration Process
We have tried to make the migration process from v4 to v5 as simple as possible. Please follow our upgrade guide for additional information.
Offline Support
Enabling offline support is optional and can be done on the application level; see the enableOfflineSupport
prop in our offline guide.
Flipper Plugin
Follow these steps to start using our Flipper plugin, a step closer to faster and more efficient development flows.
What’s Next?
We’re currently in the development of the second phase of offline support which includes:
- Access to attachments, images, and user images in offline mode.
- Access to threads in offline mode.
- Interactions such as sending messages, adding reactions, etc.
Implementing the features mentioned above will happen gradually as part of incremental minor releases in v5, so please stay tuned for these updates.
If you have any ideas/suggestions regarding our new Flipper Plugin, please reach out via the SDK's discussions page. This plugin has a multitude of possible functionalities, so we would love to get your feedback to maximize its potential.
Why Develop In-App Chat With Stream & React Native?
Checking out Stream’s React Native Chat SDK for the first time? Our latest version and its new features are only one of many reasons why developers and product leaders are choosing to integrate Stream’s React Native in-app chat solution.
The React Native Chat SDK makes it easy to build performant, scalable, and reliable in-app messaging functions in less time. Our SDK is feature-packed with rich messages, reactions, threading, and more.
Additionally, we have developed a number of sample apps using our React Native SDK to provide users step-by-step guides to follow when they want to create something unique on their own. Some of these samples are: iMessage, Slack, and WhatsApp clones.
Beyond our React Native Chat SDK, Stream offers a complete set of developer tools, like our chat API, other chat SDKs, and UI kits, that make it simple and quick to add a custom messaging experience to any kind of application.
Maker Account and Free Trial
The full suite of Stream Chat tools is available free to developers for personal use and qualifying early-stage projects – complete your short application for a Stream Maker Account and start coding today at no cost. For bigger projects, Stream Chat is available on a variety of pricing plans designed for teams of all sizes, from the world’s largest enterprises to new startups. To evaluate Stream for your use case, activate your free Stream Chat trial.
If you have any feedback or feature requests, please submit an issue on GitHub — it will help us improve our Chat SDK and build the APIs you need. Have questions? Don’t hesitate to reach out.
Make sure to follow us on Twitter @getstream_io and LinkedIn for all of our future updates.