added a webapp framework