After a month with Vanilla CSS, the ergonomics of Panda CSS are a welcome change
Move fonts to panda
Move global styles from vanilla to panda
Move over all non-Typography components
Move over Typography component, perhaps using panda recipes OR mabye text styles in the theme like this
Move over radix-colors
to panda.config.ts
Remove all of vanilla-extract
from the codebase
Can I delete the public/fonts
folder now that Im using next/font/local
?
Button disabled state is not working
First off, for my personal work, I love writing CSS-in-JS. So any solution that is not that will have to overcome a very high bar for me. That said, I know that CSS-in-JS comes with tradeoffs. It is trying to reduce those tradeoffs that lead me to try Vanilla CSS. And happy to see CSS-in-JS contiuning to mature.
The largest thing that pushed me into realizing the shortcomings of emotion
and styled-components
was Server Components.
Same
Panda CSS, like Vanilla, is another CSS-in-JS library that supports Server Components.
Panda CSS, like Vanilla, also relies on PostCSS to generate CSS at build time.
Different
Overall, Panda CSS is presented with at a higher level of abstraction than Vanilla CSS. This is a good thing. It means that I can focus on the CSS and not the PostCSS. (While it was fun to build up a style systemfrom the lower level Vanilla, there are rough edges I want to smooth over and happy to let Panda CSS take care of that.)
Things I get from Panda CSS I didnt have with my Vanilla CSS setup:
Panda
Panda New Setup
Open issues as of this writing that I ran into:
Prior Art: