A collection of client-side programming paradigms which enable rich user experiences.