kuldeepkeshwar / filbert-js

A lightweight(~1kb) css-in-js framework
https://filbert-js.vercel.app/docs/introduction
MIT License
176 stars 9 forks source link

Explain trade-offs #72

Closed oliviertassinari closed 4 years ago

oliviertassinari commented 4 years ago

Considering that a lot of developers might already know styled-components, I think that it would be great to explain how Filbert is different. For instance, the readme could details the different tradeoff taken to shrink the bundle size.

issue-label-bot[bot] commented 4 years ago

Issue Label Bot is not confident enough to auto-label this issue. See dashboard for more details.

kuldeepkeshwar commented 4 years ago

@oliviertassinari thanks for posting it here.

filbert-js was built with a top down approach, keeping the api similar to other css-in-js libraries (styled-components/emotion) and do minimal things while achieving the outcome.

On surface filbert-js provides most features provided by other css-in-js libraries. So from usage point it is quite similar to styled-components/emotion & migration to/from filbert pretty easy & straight forward. Apart from features, filbert also covers integration with friends in react eco-system(CRA/Next.js/Gatsby/Preact/Babel plugin & macro) & some of the integrations are in WIP e.g tailwind.

filbert's architecture is based on layered approach.

Some of the things right now not in filbert are:

For i/ii/iv/v are easy and some of them are in WIP & soon will land in coming releases. For iii, I am looking for community support as am not much into RN

oliviertassinari commented 4 years ago

Thanks for the extra details, a section like https://preactjs.com/guide/v10/differences-to-react in the documentation could be valuable.

kuldeepkeshwar commented 4 years ago

@oliviertassinari sure I'll add that to website