ticket1: add model, view, templates