Project teams are increasingly common in classes. However, simultaneously assembling dozens of effective teams is challenging because it is difficult to take into consideration several different constraints. This thesis develops an interface that facilitates the process of forming teams within classes. It introduces Teammatic, a mixed initiative interface for instructors to work in conjunction with an algorithm. We created an algorithm that will account for several constraints, as inputted by the instructor, in order to create teams among the students. Common constraints include distributing roles and ensuring overlapping schedules amongst teams. Our results show that Teammatic produces teams that have equal or higher compatibility scores than teams created manually. Furthermore, Teammatic allows instructors to form teams given various constraints in significantly less time.