The Holy Grail of reusable style frameworks is to provide ways to change colors easily. After all, sites need to match the brand identity. Exposing SASS variables like Bootstrap's $brand-color, Foundation's $primary-color, and Kendo UI's $accent allow this. But what if scripts need the values of these variables?

Lately, I've been working on the theming system of Kendo UI for Angular. The system has turned out rather nicely, providing a hefty set of features that we could not ship previously. One of the elements that allowed this is the (surprisingly simple) dependency infrastructure.