A general purpose JavaScript programming framework