refactor add with project classes