separated view logic for modifying project config into TemplatedViewModel