Refactor project provider