implemented ProjectDirectory