"Pretty good" is good enough for most developers, but React has some issues that reduce developer experience (having to do your own memoization and a lot of hidden complexity that can impact performance) that require a huge engineering effort to solve (React Compiler has been in the works for years).
I'm also not sure whether the move from class- based components to functional components with hooks should've been part of the "regular" React or if it would've been better to do a hard break (e.g. a version 2.0), but I think the collective front-end developer world is still traumatized from the AngularJS -> Angular transition.
Coming from AngularJS then Angular then Vue, a bit of Svelte, which I didn't like, to React.
I tried React before and hated it.
Yes, it's not perfect but right now it's pretty good.
I like composables, there are a few gotchas to get used to, but that's everywhere, when in Rome.
Vue is better IMHO, but doesn't have the graphql client I require and there is more momentum in the React ecosystem right now. More innovation is happening in the React ecosystem than elsewhere.
Angular is still stuck in the past. Ngrx as the only state management library, full of boilerplate and the annoying rxjs. One doesn't simply with Angular.
Svelte is too barebones for my taste. Manually doing form validation and rendering for instance. If it had a larger ecosystem it would be great, but it doesn't. It for the purists who like reinventing the wheel.
Of course it has other good uses as well, it's fast, much faster than React.
When I used React, I use high level libs where I don't have to manually do stuff. But when I do it comes naturally, it's a simple learning process.
I prefer logic in templates from Vue over the brackets and conditions of React. I like Angular's templating and 2way binding.
I don't like Reacts aliases, like having to write className instead of class.
But in the end productivity is what matters for me, and React is pretty productive and has a large ecosystem. But finding the right packages is a journey.
React SSR is a horror story.
Vue's especially with Quasar is a love story with butterflies and perfume. Great tooling.
It's good enough and I'm actually enjoying to work with it, maybe because it's so new to me and learning new things makes me happy (like when you're young you're happy because there is so much new stuff constantly, which studies found that it makes people happy).
That they removed the ability to embed it without compilation from v19 on is a very bad move though.
I'm also not sure whether the move from class- based components to functional components with hooks should've been part of the "regular" React or if it would've been better to do a hard break (e.g. a version 2.0), but I think the collective front-end developer world is still traumatized from the AngularJS -> Angular transition.