aesthetic-suite / framework

🎨 Aesthetic is an end-to-end multi-platform styling framework that offers a strict design system, robust atomic CSS-in-JS engine, a structural style sheet specification (SSS), a low-runtime solution, and much more!
https://aestheticsuite.dev
MIT License
203 stars 5 forks source link

breaking: Merge `sss` package into `core` and `style` packages. #150

Closed milesj closed 3 years ago

milesj commented 3 years ago

Summary

When I first designed the sss package, I extracted the functionality out so that it could be used in other contexts, or by other packages. However in practice, it caused the codebase to be more complex than I'd like, and caused other issues like:

The file sizes of each affected package before and after the merge:

Core - 18.21 -> 17.74 = 3% reduction
SSS - 15.88 -> 0 = 100% reduction
Style - 34.37 -> 37.74 = 10% increase
= 68.46 -> 55.61
= 19% reduction!!!

Besides the amazing file size reduction, the SSS rule structure has been applied to the style package, which means that it now supports @variants, and other at-rules. Much nicer!

Screenshots

Checklist