add template and project factory (not complete yet)