02 February 2021
Frontend frameworks. Will the king fall in 2021?
Marcin Gajda: In terms of the most used JS frameworks, the report quite clearly shows that we are heading towards some stabilization on the market for these tools. The podium in this category has remained unchanged for 4 years and is occupied by three well-known kings: React, Angular and Vue.js.
I think in a few years and with some new features, Svelte will easily dethrone Vue as a light, interesting alternative to giants such as Angular and React. Especially in application development for so-called “thin clients”.
Our developers have played around with Svelte back in 2019, just to see how it works. We created a simple online game called Typerunner.js where you can challenge your friends for a keyboard-off and see who types the fastest. The experience of working with Svelte was quite positive, and we are closely following its further growth.
React itself, on the other hand, still has a solid position in the frontend community, and this won’t change in 2021. The constant development of this tool combined with some pioneering in the frontend world ensures that it is a future-proof solution that many developers and clients creating web applications are looking towards. Features such as hooks in the past and concurrent mode and component-based servers in the future ensure that React is convenient to use, and its use is extensive and appropriately optimized for the web development landscape in 2021.
No surprises in the data layer management
Andrzej Wysoczański: The use of individual solutions shows that defeating Redux will not be so easy. Despite the drop in interest and satisfaction with this tool in favour of Context API in React, it is still irreplaceable for large applications. Maybe the premiere of Vue 3 will make Vuex’s popularity soar in 2021. Or maybe we’ll receive something new in 2021 from XState, the second top new player in the ranking?
GraphQL is now extremely popular, becoming number one in satisfaction, interest and awareness categories. Ease of work and great cooperation with the backend seems to be the key to success and happy developers.
The hype among frontend developers is at an all-time high, and together with Apollo Client, GraphQL will have no equal in 2021.
Backend frameworks and the total dominance of Express.js
The results in this category are a mix of server-side rendering frontend frameworks (Next.js, Nuxt.js), backend frameworks (Express.js, Nest.js) and static page generators (Gatsby, headless CMS Strapi). Unfortunately, even though it was mentioned as a top pick by Kent C. Dodds, Remix – the first commercial framework in the React ecosystem – didn’t make the cut.
However, what is really interesting is the new, growing trend of using the so-called JAMStack, i.e. headless CMS (Strapi) and site generators (Gatsby, Next.js).
Another interesting aspect is the appearance of Fastify in third place in the “interest” group. This may herald the need to build even more efficient systems in 2021, handling even more queries at a lower cost. It is interesting that it appeared when COVID-19 forced us all online, causing enormous strain on the global network.
Jest doesn’t jest around and wins in the testing category
Honestly, I couldn’t be LESS surprised. I also couldn’t be more pleased that the tools and libraries with the greatest interest from respondents are Jest, Testing Library, Cypress and Storybook – exactly the solutions we use on a daily basis in almost every The Software House’s projects.
Rafał Kucharski: There are hardly any surprises when it comes to unit testing libraries. Jest continues its reign, which is to be expected considering React has been voted the most popular framework and Jest is part of its bootstrapping tool that everyone uses.
Jasmine, being the default testing tool for Angular projects continues its decline, which is connected to the decline of Angular itself.
Mocha is still a viable alternative, but it seems that for most users, the hassle required to set it up properly is not worth those few seconds that it may cut from the time their tests require to complete.
Testing Library with its more humane and user-oriented testing approach has become a go-to solution for testing React components.
It’s hard to tell what caused that to happen for sure. It might be that the community has simply matured, or that proper tools that bring new ideas were finally made available. I would like to believe that it has something to do with the Typescript gaining popularity. With static checks available, the community can finally move away from the old testing pyramid and embrace a more modern testing trophy approach, which acknowledges the fact that static checks can greatly limit the number of unit tests that developers need to write. Time saved this way can be used to write integration and end to end tests. If done well, that can bring much more value to the table.
That being said, Cypress is a great open-source framework and it would be unfair not to acknowledge the fact that without it being around, the buzz around non-unit tests would not be even remotely as big as it is now in the frontend world. I haven’t had an opportunity to play with Playwright myself yet, but it looks like a complementary solution for Cypress and I’m not surprised that a lot of developers are looking forward to what 2021 will bring for it. I consider myself part of that group.
Two in one – React Native takes mobile
Aleksander Patschek: In 2020, React Native completely dominated the competition in mobile development. It basically won with Native Apps in every category. In my opinion, it goes down to the unwaning, high popularity of React framework worldwide that won’t end anytime soon.
Thanks to similarities between React and React Native it is so easy for frontend developers to create a mobile app. And for companies, it is easier and cheaper to find frontend developers that can make both web and mobile at the same time, instead of creating a separate dedicated mobile team.
For these reasons, I predict that in 2021 developers will see an even further market takeover by React Native. And with React Native for Windows and macOS, it can 100% outdo Electron.