It seems unstoppable. Many developers, particularly those who’ve been in the industry a long time, have heard this all before, though. Before React, there was Angular and before that, there was jQuery – all frameworks that have fallen by the wayside. It’s just a matter of time before something comes along and takes the mantle as the new hotness. Or so they say.
I’m not so sure. In fact, I think React will be with us for many years to come. Just take a look at this data from the State of JS survey.
Only 16.3% of respondents said they were not interested in learning or using React. Compare that with Vue.js (the only real competitor at the moment) where 32.3% of respondents said they were not interested in learning or using the framework.
So why is React so popular? I believe part of the reason is because of how adaptable it has become. It started as a framework for building single-page web applications, but over time, an ecosystem of supporting technologies has evolved around it, expanding it’s potential. Now, a developer who learns React can not only build web apps, but also native mobile apps (with React Native) or websites (using JAMstack, Gatsby and Next.js).
What is React Native?
React Native, released in 2015, is a version of the framework that can be used to create applications for iOS and Android-based devices.
Although, not everyone is a fan. In 2018, Airbnb famously announced that it was sunsetting React Native in favour of pure native frameworks.
What is Next.js?
Next.js is a framework for React. Yes, a framework for a framework 🙄
It’s quickly taken the world by storm, clocking 60k stars on Github within just 4 years. Indeed, we think it’s poised to become even more popular in 2021.
Next.js does away with all these by bringing static and service side rendering to the party. You can use it to build lightning-fast JAMstack websites (though, these can have their own issues), or secure, server-rendered online applications. You can even build a basic API using the Next server, blurring the lines between front-end and back-end development.
Will React’s dominance last?
But can you build a mobile app in Vue? Not really. Can you build a mobile app in HTML? Kinda. Will any of this impact React? No. The applications of React are too vast for any of these individual developments to make a dent in its inexorable rise. Plus, my career is too invested in it at this stage anyway.