HotDrink: a library for web user interfaces

  • Authors:
  • John Freeman;Jaakko Järvi;Gabriel Foust

  • Affiliations:
  • Texas A&M University;Texas A&M University;Texas A&M University

  • Venue:
  • Proceedings of the 11th International Conference on Generative Programming and Component Engineering
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

HotDrink is a JavaScript library for constructing forms, dialogs, and other common user interfaces for Web applications. With HotDrink, instead of writing event handlers, developers declare a "view-model" in JavaScript and a set of "bindings" between the view-model and the HTML elements comprising the view. These specifications tend to be small, but they are enough for HotDrink to provide a fully operational GUI with multi-way dataflows, enabling/disabling of values, activation/deactivation of commands, and data validation. HotDrink implements these rich behaviors, expected of high-quality user interfaces, as generic reusable algorithms. This paper/tool demonstration introduces developers to the HotDrink library by stepping through the construction of an example web application GUI. The library is a concrete realization of our prior work on the "property models" approach to declarative GUI programming. To encourage adoption among developers, we have packaged the technology following established web programming conventions.