If you've used styled-components, I highly recommend trying Linaria instead. Linaria functions very similarly to styled-components, but styles are generated at build-time, which results in smaller bundle-sizes and improved front-end performance.
The styled-api is not as powerful as styled-components (no attrs, no embeddable css-fragments, no built-in theming); but in most cases, you can achieve what you need just as easily without those features.
Also, if you use dynamic props to write css-variables in your styled-components implementation, Linaria is even easier since it's always css-variables under the hood instead.
linariaZero-runtime CSS in JS library
If you've used styled-components, I highly recommend trying Linaria instead. Linaria functions very similarly to styled-components, but styles are generated at build-time, which results in smaller bundle-sizes and improved front-end performance.
The styled-api is not as powerful as styled-components (no attrs, no embeddable css-fragments, no built-in theming); but in most cases, you can achieve what you need just as easily without those features.
Also, if you use dynamic props to write css-variables in your styled-components implementation, Linaria is even easier since it's always css-variables under the hood instead.
mjml-reactReact component library to generate the HTML emails on the fly
Mjml + React is a great combination when you're trying to write emails on the server. It removes the pain-points of having to maintain html emails as long-strings and the poor html + css support of some email clients. You can also install types for TypeScript on the side. One downside though is it uses Node#fs under the hood, so testing on Storybook can be a bit of a pain.
common-tags🔖 Useful template literal tags for dealing with strings in ES2015+
Before I found this package, I used to create a long array of strings, and join them together whenever I needed large text content. But with common-tags, I could use many of their handy tagged-template literals to create large paragraphs, while still keeping under my Prettier line limits, in a much simpler way!
@nestjs/commonA progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications on top of TypeScript & JavaScript (ES6, ES7, ES8) 🚀
reactA declarative, efficient, and flexible JavaScript library for building user interfaces.
Great Documentation
Performant
Highly Customizable
Easy to Use
I've moved about five years ago from Angular to React and never looked back.
React is so much more performant with the shadow DOM, and allows building component-based apps that are modular and easy to maintain.
When they first introduced Hooks, at first I was reluctant since it seemed like a regression from OOP to functional programming, but I decided to take the leap, and actually found Hook-based apps to be more predictable and easier to maintain.
Haven't started speaking about the ecosystem - thousands of libraries allowing you to easily do just about anything in React.
React is definitely my weapon of choice when it comes to frontend development.