Fragments 2017

A conference on the mobile ecosystem in India

React Native: Things we learned the Hard Way

Submitted by Gaurav Kaushik (@gauravkaushik) on Jul 28, 2017

Section: Full Talk Technical level: Intermediate Status: Confirmed & scheduled

Abstract

At Myntra, we jumped the React Native bandwagon relatively early. Now, having used in it production for almost 2 years, we’ve had a lot of success along with a great deal of learnings which we’d like to share with a larger audience

Outline

I’ve come across many teams that are really excited about React Native(RN) but have some apprehensions when it comes to using/integrating it in their production apps. Having realised the benefits of RN early on, we were one of the early adopters of the technology and have been using React Native in our apps that reach millions of users for quite sometime now. And we’d like to share our learnings with the community

Since React Native(RN) has been around for quite some time now, in this talk, I’ll only briefly go over what RN is, and how our journey with RN in production has been. The core part of the talk would focus on the following:

  1. How we’ve integrated react native (JS development) with our android and iOS development pipeline
  2. How we support app versions already downloaded on user’s devices via over-the-air bundle updates
  3. Go over some key technical challenges we faced, our learnings and eventual solutions
  4. Our plans on further exploring ways in which we can leverage RN
  5. Future of RN landscape in general

Speaker bio

I am Gaurav, Senior Software Enginner at Myntra. Working on moving our android and iOS apps to React Native (one feature at a time)

Links

Slides

https://speakerdeck.com/gauravkaushik/react-native-things-we-learned-the-hard-way

Preview video

https://www.youtube.com/watch?v=drdXOn92Tvc

Comments

{{ gettext('Login to leave a comment') }}

{{ gettext('You need to be a participant to comment.') }}

{{ formTitle }}
{{ gettext('Post a comment...') }}
{{ gettext('New comment') }}

{{ errorMsg }}