A React Native widgetised framework - Move fast and build things
We have already seen how React Native and React Native for Web helped us in building full-fledged features on all platforms such as Android, iOS and the web. After solving this problem of code sharing, the next one we are headed to is solving the case of custom layouts. For instance, an e-commerce product page could have different UI layouts for a shirt, a sofa, and a mobile, though their basic building blocks are just the same. At Flipkart, we have tried to flatten this multi-dimensional world into a unidirectional one by building a widgetised framework and extending functionalities of React Native. This talk will elucidate my journey of building cross-platform applications where we break down the UI into simplistic, shareable UI elements called widgets and render them depending on the layouts required. For example, the layouts configured from backend gives the front end capabilities of intelligently rendering the widgets in the specific order and change them as and when required by the switch of flags. This talk will cover my journey of realizing the efficiency of cross-platform code written via React Native and React Native for Web, not only in terms of minimizing redundant code writing for developers but also giving them independence on the business vertical they are building for. I believe, it is a resource optimization for teams in a product-based firm and also helps to divert more concentration to platform-specific enhancements. This talk will broadly cover the following: 1) Discussing the basics of React and React Native for web and how we coin the world “Native” in terms of code and usability. 2) Furthering to the next step of optimization by adapting the widgetisation of the UI and offloading the capabilities to configure custom layout to the backend. 3) Discussing the way we can build a system to configure styles, layout and order of the widgets on any page of the website/application based on the business requirements. 4) How small and medium product companies, independent developers can leverage this framework in tandem with adapting to React-Native. 5) While everyone codes using React Native, how platform specific experts can spend time enriching platform related capabilities. 6) Calculations and mathematics on optimization of developer resource and reducing the time of delivery of features.