adoption to API and some basic UI(UI will be modified)