refactor ui for better ux