sample widget to illustrate the evolution of JavaScript components