add ui and logging