https://ryanfleury.substack.com/p/ui-part-3-the-widget-building-language