redo of UI with templates