Skip to content


Author and maintainer: David Sancho


I love CSS. In my opinion writing React with styled-components It's one of the best combos for writing scalable design systems, UI libraries and applications. When I discovered Reason back in the days, it wasn't possible to bind to styled-components. Even people were asking for it (a few times). Mostly since styled-components/emotion relied on a JavaScript feature that isn't available in Reason (template literals). Aside from all of this, there were a few efforts on bringing type-safety on top of CSS with bs-css or bs-glamour. Even thought I liked that approach, it had two big drawbacks. The need for learning a new DSL on top of CSS was tedious and the runtime is huge. After discovering what a ppx was ("a mechanism to embed other languages inside Reason") It was possible to mimic the same API as styled components. That's where this project became a reality.

To know more about how it works or what are the benefits I recommend to watch my talk at ReasonSTHLM Meetup.