project generation helpers and cleanup