Form controls are important in mobile apps to interact with the user. Flutter provides a set of form widgets for Material Design and iOS style. These form widgets generally have no internal state. Their appearance and behavior are purely defined by constructor parameters. With state maintained in ancestor widgets, form widgets are re-rendered to reflect to state changes. This chapter covers recipes related to basic usage of form widgets.