React is a great tool with a massive developer community. It comes with its own benefits and challenges. And yet, there may be tooling that is more suitable to your project.
I really like React. I work with it daily.
As a fan of React, I also feel like it's important to point out that React is not built for every use case.
I rarely use React for side projects because it's overkill. It would still work, but it's not necessary. It's not the best tool for the thing I'm doing. And I prefer to look to tools that solve my problem more effectively, rather than choosing what I'm already familiar with.
As much as I love React, there are a great many developers who are more knowledgeable than me. So I'm not going to give an in-depth analysis on the problems React has or outline precisely when I think you should or shouldn't use it. (At least not here.)
Instead of debating what's wrong with React or when it's not a good fit, we can turn our attention to what others are doing well.
There are a number of tools that are highly focused on the developer experience for simple websites. Both Astro and SvelteKit are web frameworks built on top of Vite with their own (similarly-structured) components.
They are taking slightly different approaches and solving slightly different use cases, but one thing they've both done really well is simplifying the process of working with components and keeping a site's code clean.
I like to say that you should use the right tool for the job. In some cases, that might be what you're most familiar with.
Or you may evaluate your options and decide React and its massive developer community and resources make it a good fit.
But it's still important to recognize that there are other tools out there that come equipped with a good developer experience and are aimed at solving problems differently than React — problems you may have.
A brief introduction to React, along with a list of references for more learning.
React and Vue are two of the most popular component frameworks used in modern website development. Let's break down the differences between these two everyday tools.