initial frontend and api code