refactoring struct of project