projects handling refactoring