basic structure of project