add change view and backend implemntation