refactor project to make it more clear and concise