basic project structure and api calls