1. A computer-implemented method of providing suggestions for automatically completing an incomplete user interface (UI), comprising: determining attributes of UI components in a plurality of design examples; receiving a UI query for automatically generating a design for the incomplete UI, the UI query comprising information about a first set of UI components in the incomplete UI; and in response to receiving the UI query, identifying, based at least in part on the determined attributes of UI components, a design example in the plurality of design examples, the design example comprising a second set of UI components similar to the first set of UI components and a proposed UI component for proposed inclusion in the incomplete UI design.