facebook / react-strict-dom

React Strict DOM (RSD) standardizes the development of styled React components for web and native.
https://facebook.github.io/react-strict-dom
MIT License
3.19k stars 161 forks source link

Babel preset with integrated StyleX #210

Closed necolas closed 1 month ago

necolas commented 1 month ago

This patch changes RSD to export a babel preset (not plugin), which integrates StyleX to simplify developer setup and ensure that the correct configuration is used.

StyleX itself is also patched to fix theming on web and remove deprecated or unrelated APIs for cross-platform React.

github-actions[bot] commented 1 month ago

workflow: benchmarks/size

Comparison of minified (terser) and compressed (brotli) size results, measured in bytes. Smaller is better. Results Base Patch Ratio
react-strict-dom/dist/dom/index.js
· compressed 2,488 2,488 1.00
· minified 8,586 8,586 1.00
react-strict-dom/dist/dom/runtime.js
· compressed 836 850 1.02 +
· minified 2,365 2,404 1.02 +
react-strict-dom/dist/native/index.js
· compressed 15,342 15,342 1.00
· minified 57,046 57,046 1.00
github-actions[bot] commented 1 month ago

workflow: benchmarks/perf (native)

Comparison of performance test results, measured in operations per second. Larger is better. Results Base Patch Ratio
css.create
· small 1,141,629 1,151,403 1.01 +
· small with units 442,905 447,118 1.01 +
· small with variables 672,730 676,461 1.01 +
· several small 323,392 327,583 1.01 +
· large 211,508 212,810 1.01 +
· large with polyfills 147,841 149,513 1.01 +
· complex 101,814 102,220 1.00 +
· unsupported 222,523 224,932 1.01 +
css.createTheme
· simple theme 219,267 222,056 1.01 +
· polyfill theme 207,349 207,580 1.00 +
css.props
· small 246,318 249,397 1.01 +
· small with units 191,880 193,913 1.01 +
· small with variables 103,872 106,470 1.03 +
· small with variables of units 74,155 75,021 1.01 +
· large 105,180 106,486 1.01 +
· large with polyfills 37,053 37,623 1.02 +
· complex 23,528 23,898 1.02 +
· unsupported 147,091 149,005 1.01 +
· simple merge 164,907 166,404 1.01 +
· wide merge 17,955 18,088 1.01 +
· deep merge 17,697 17,847 1.01 +
· themed merge 32,016 32,243 1.01 +