Shyam Swaroop
Shyam Swaroop
Shyam Swaroop is the maintainer and core developer of an open-source project, Atri engine - a new framework built on React. He is also the Co-Founder & CTO of Atri Labs - the company behind this project. He has worked as a software engineer in both academia and industry. His most recent engagement in academia was working with DARPA under the US Department of Defense as Graduate Research Assistant at Columbia University (USA). Previously, he has created software products that have yielded multi million dollars of revenue for his organization, EXL Services, a US-headquartered technology consulting firm. He studied Engineering from IIT, India and dropped out from graduate program in computer science at Columbia University, USA to work on his startup full-time.
React Advanced Conference 2022React Advanced Conference 2022
20 min
Lessons Learnt While Creating a New Framework on Top of React
React is so powerful that it can be used for more than frontend development. E.g. creating UI programmatically in the backend using a rule-based system or machine learning is another use case where React can serve as the best fit. Similarly, documentation earlier used to have only .md files but now it also includes .mdx file that contains React code. To fulfill such use cases, developers need to understand the internals of React and the tooling around it. Some great sources are popular codebases such as create-react-app, Next.js, etc. In this talk, I will share the lessons we learnt while creating a framework that achieves more than web development using React. Firstly, I will cover how create-react-app codebase is the best codebase to understand how webpack, babel, eslint, typescript etc. can be used alongside React. Secondly, I will share how Next.js teaches us to create a js framework where we can write backend and frontend in the same file and still be able to separate the two during calls. Thirdly, I will share how our framework supports plugins, i.e. the React code resides in multiple repositories but all of this code can share a single React runtime inside the browser. This is a very advanced use of React that cannot be achieved by code splitting using React.lazy. This talk will enable developers to use React for more than frontend development.