Sure. But here we have one that happens to be used by most popular UI toolkits. Forget about Mantine, it feels like MUI is in every other project.
Now again anecdotally, outside of the JS community, the approach and attitude of maintaners would typically be:
- how do I make this extremely widely used package have less issues with minimal backward compatibility breakage
- can I additively introduce features that are not prone to the issues
not "I'm starting over"
Just in the article comments there are 5 other people pointing out a variety of issues with the author's new favorite choice. And they're all kinda right - all choices have tradeoffs. That's precisely why only dedication to compatibility and continuity can grow any one of them into something that is still sensible to use while acknowledging its limitations.
This is IMO a more sensible approach to software engineering
- Start with an approach that is significantly stronger in a certain aspect
- Acknowledge its limitations
- Work to ameliorate those as much as possible
P.S. the article about Emotion is also an example of how React's "no wait, this was always a bad idea because <X>" (where X in this case was concurrent mode) is causing rippling breaking changes. Again, this is their prerogative and at the end of the day, they have their own priorities internally at Facebook. But that's not necessarily healthy for the wider community.
Also FWIW, InfluxDB's approach to breaking changes has been compared to "a random npm library" https://news.ycombinator.com/item?id=37206194
> The only data either of us have is anecdata, which is why we're kind of at a standstill here.
This discussion has been also been useful for helping me pinpoint what exactly is different about JS when I'm working with it.
I'm still hoping I was at least somewhat convincing, because I don't think this is a problem that can be tackled without wider acknowledgement from the JS community.