ConsenSysMesh / rimble-ui

React components that implement Rimble's Design System.
https://rimble.consensys.design/
MIT License
462 stars 67 forks source link

Switching Styled Components to Emotion to improve support for Gatsby & React Native Environments #392

Open kamescg opened 4 years ago

kamescg commented 4 years ago

I wanted to see if there has been any discussion about moving the styled functionality to emotion, instead of styled-components?

I noticed rimble uses styled-system which is super awesome - love the work jxnblk does!

Recently he has made major improvements to his underlying design assumptions and brought everything into theme-ui which in his opinion, improves on his original styled-system assumptions.

https://theme-ui.com

The primary styling system is emotion however. Not styled-components.

However, the switch to emotion would bring a couple of benefits I think might be useful for Rimble.

First. jxnblk is full-time on Gatsby, from what I can tell spending all his efforts improving the theme-ui system and including interesting features with mdx. It would be great to add his improvements to the library pre the upcoming Gatsby announcements for their platform launch. Could be a lot of great improvements that could be picked up along the way.

Second, emotion provides better css primitives that can map to React Native components. It would be cool and to try and create React Native Web prototype using the Rimble Component System in application similar to https://github.com/brunolemos/react-native-web-monorepo

Thoughts?

MikeLockz commented 4 years ago

Hey @ Kane’s, great suggestions for switch styled-components to emotion. That is something we have been discussing and is on the road map. We will take your advice into prioritizing the switch.

Thanks for reaching out. I’ll leave this rocket open until we have made a decision on the switch.

On Nov 1, 2019, at 8:27 AM, Kames notifications@github.com wrote:

 I wanted to see if there has been any discussion about moving the styled functionality to emotion, instead of styled-components?

I noticed rimble uses styled-system which is super awesome - love the work jxnblk does!

Recently he has made major improvements to his underlying design assumptions and brought everything into theme-ui which in his opinion, improves on his original styled-system assumptions.

The primary styling system is emotion however. Not styled-components.

However, the switch to emotion would bring a couple of benefits I think might be useful for Rimble.

First. jxnblk is full-time on Gatsby, from what I can tell spending all his efforts improving the theme-ui system and including interesting features with mdx. It would be great to add his improvements to the library pre the upcoming Gatsby announcements for their platform launch. Could be a lot of great improvements that could be picked up along the way.

Second, emotion provides better css primitives that can map to React Native components. It would be cool and to try and create React Native Web prototype using the Rimble Component System in application similar to https://github.com/brunolemos/react-native-web-monorepo

Thoughts?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

kamescg commented 4 years ago

Please keep us in the loop with any changes <3 @ConsenSys/rapid-core.

Also would love to add Rimble to a https://github.com/KamesCG/ethid-mobile branch

gesquinca commented 4 years ago

@KamesCG thanks for raising this issue. We have actually been bouncing this idea around in the past. I just published an old branch where I attempted to port the library to emotion to gauge how difficult this would be. This branch is obviously not very stable, but feel free to take a look.

https://github.com/ConsenSys/rimble-ui/tree/ge-with-emotion

We're currently working on prioritizing this change on our roadmap and will keep you in the loop. I think your team would be ideal in helping test this change as we move forward.