Framework for data-driven Javascript applications