Avatar of vishalnarkhede
Javascript Developer at getStream.io ·

Recently, the team at Stream published a React Native SDK for our new Chat by Stream product. React Native brings the power of JavaScript to the world of mobile development, making it easy to develop apps for multiple platforms. We decided to publish two different endpoints for the SDK – Expo and React Native (non-expo), to avoid the hurdle and setup of using the Expo library in React Native only projects on the consumer side.

The capability of style customization is one a large deal breaker for frontend SDKs. To solve this, we decided to use styled-components in our SDK, which makes it easy to add support for themes on top of our existing components. This practice reduces the maintenance effort for stylings of custom components and keeps the overall codebase clean.

For module bundling, we decided to go with Rollup.js instead of Webpack due to its simplicity and performance in the area of library/module providers. We are using Babel for transpiling code, enabling our team to use JavaScript's next-generation features. Additionally, we are using the React Styleguidist component documentation, which makes documenting the React Native code a breeze.

READ LESS
React Native Chat Tutorial (getstream.io)
19 upvotes·1 comment·99.7K views
Nick Parsons
Nick Parsons
·
June 6th 2019 at 7:29pm

Nice work!

·
Reply
Avatar of Vishal Narkhede

Vishal Narkhede

Javascript Developer at getStream.io