project type implementation