Categories AI

Apple Unveils AI Tool for Streamlining UI Prototype Development

Apple researchers have unveiled SQUIRE, an innovative AI-driven tool that empowers developers to experiment with interface designs more effectively than traditional AI coding solutions allow. Here’s an overview of its features.

A Fresh Take on AI-Driven Interface Prototyping

In a recent paper titled SQUIRE: Interactive UI Authoring via Slot QUery Intermediate REpresentations, a team of Apple developers presents a cutting-edge method for AI-assisted interface creation.


As outlined in the paper, while natural language has improved various aspects of development, it introduces two primary challenges:

Firstly, natural language can often be ambiguous, hindering developers from precisely conveying their intentions. Secondly, the responses generated may be erratic, requiring developers to undergo a cycle of trial and error to rectify unsatisfactory outcomes.

This is where SQUIRE makes a difference. It offers a visual interface that allows developers to construct and enhance UI prototypes incrementally, ensuring clearer control over the outcomes.

From the study:

In SQUIRE, users initiate a project by offering a prompt that outlines their UI goals, alongside sample data for reference. They create the UI in a tree-like structure by prompting SQUIRE to fill in gaps representing expected functionalities. In response, SQUIRE provides a list of suitable alternatives, specifically tailored to each gap in the incomplete UI. Selecting an alternative instantly updates a live preview and the underlying code, making it easy to visualize variations. Users can also make specific requests to change the appearance of particular UI sections, ensuring that no unrelated code is modified. In these cases, SQUIRE generates temporary controls that facilitate quick, semantically-related changes without the need for re-prompting. Throughout, the LLM functions as a collaborative assistant, presenting reasonable options for users to evaluate while ultimately respecting their decisions.

In essence, developers interact with SQUIRE through natural language prompts, but rather than affecting the entire interface, each prompt is associated with a particular UI element.

A study involving 11 frontend developers using SQUIRE for their interface prototypes revealed that participants enjoyed a sense of control when exploring and iterating on various UI designs. They also rated the system highly regarding usability and overall satisfaction.

Furthermore, the enhanced control helped developers feel more confident venturing into uncharted design territories, as any changes were easy to implement, foresee, and revert if necessary.

From the study again:

Through data collected from a user study of 11 frontend developers, we find that (1) SQUIRE’s interactions encouraged participants to frequently explore, rather than merely using it as a coding shortcut, (2) the ease of modifying changes fostered confidence in taking creative risks, (3) participants believed SQUIRE effectively matched their intentions during alterations, and (4) overall, they were pleased with the quality of code and visuals produced by the system.

Inside SQUIRE

Unlike many AI tools that generate code straight from user prompts, SQUIRE first constructs an intermediate representation of the interface known as SquireIR. This representation models the UI as a tree of components with named slots that can be filled progressively, as illustrated below:


This structure can also include placeholders for components yet to be defined (e.g., a button label, an image, or a text section), as well as various UI alternatives, like representing the same content as either a list or grid.


Subsequently, SQUIRE translates this representation into code using HTML, CSS, and JavaScript with Web Components to finalize the UI structure.

A crucial feature of SQUIRE is its method of handling modifications.

If a developer opts to change a button or adjust the layout, only that specific element is updated, leaving the rest of the design unchanged.


The researchers assert that this approach prevents the trial-and-error pitfalls that often arise with conventional AI coding tools, which can create unexpected changes outside of the developer’s intentions.

This framework also allows SQUIRE to propose multiple alternatives at each step, enabling developers to easily compare different iterations without losing previous progress.

Unlike many technical papers, this study does not delve into the specifics of model training, architecture, or datasets. However, the researchers do mention that SQUIRE utilizes OpenAI’s GPT-4o; the focus of the paper remains on the system’s design and interaction approach.

Currently, SQUIRE is not widely available and was exclusively used by the 11 developers involved in the study. Nevertheless, it is easy to envision how this technology could be incorporated into future iterations of Xcode and other Apple development platforms.

To delve deeper into SQUIRE, click here.

Recommended Products on Amazon

FTC: We use income-earning auto affiliate links. Learn more.

Leave a Reply

您的邮箱地址不会被公开。 必填项已用 * 标注

You May Also Like