Introduction
Core Principles
DX and UX are orthogonal
If you have “trade-offs” between developer experience and user experience,
that’s a skill issue. We create the most optimal CSS for your imaginary users,
and provide a second-to-none developer experience.
Provide unrestricted primitives
We believe that writing your CSS in the same file as your components is always
better than the alternative. Therefore, we must provide features and escape
hatches that mean you never have to drop down to importing a .css
file.
CSS needs functions
Even “boring vanilla” StyleX includes paddingHorizontal
and paddingVertical
because they are common patterns that are tedious to write out by hand. Your CSS
framework should support abstractions.
Prior Art
We thank the following libraries for making all the mistakes before us:
Special Thanks
We would like to thank the teams behind Rollup,
Vite, and
TypeScript ESTree for
making any of this possible.