When using Tailwind, don't forget that it is not only to be used as a utility-like CSS framework, but is also intended to build your own CSS systems. You can customize it and build your own classes using the `@apply` directive and other tools so that you don't copy/paste the same utility classes all over the place, but instead use CSS as we used to back in the good ol' days, with custom classes. :)
React makes it easy to avoid the need for duplicate naming such as 'btn' css class and a <Button> component.
I would also recommend twin.macro, though I'm still on the fence about using it.
At the very least, it helps with difficult things like style overwrites, ensuring utilities are spelled correctly, conditionally applying utilities and bailwind (one-off styles)
I'd also recommend looking into https://chakra-ui.com/