The Shiny project has been designed to ensure good separation between the widget code and the lower-level rendering code that widgets utilize. It is also built with the understanding that graphical drivers may be useful on more than a single platform and could potentially be changed or added to over time.