initial UI and keyboard input