Delivering instant update patches for React Native to 50+ million people
Surya Kanoria at ReactFoo 2017
One of the chief reasons why we adopted React Native at Flipkart was to deliver Over The Air (OTA) updates to our 50+ million users instantly. When we looked at the known existing solutions like CodePush etc, we found three major issues that were not solved but were critical for us: 1) The updates were not really instant as a cached bundle gets loaded while it silently gets updated in the background. 2) These updates were enormous in size (around 700kB) as the entire bundle gets downloaded at the client-end every time an update is shipped. For our average 2G users who visit the app once a month, it would take more than 30s for the React Native bundle to get downloaded and the page to be loaded everytime the App is launched. 3) We have multiple teams maintaining their own React Native bundles. When these teams themselves share a lot of common components besides the React Native Framework Code, lots of redundant download is caused. We built our own system which efficiently solved all of these issues and is being used by multiple Apps inside Flipkart. This talk will give a detailed description of the solution and teach the audience to build their own optimized solution to deliver instant OTA updates for React Native.