basic framework of project