UI State, AI State: Generative Interfaces
Generative User interfaces feel like the next frontier of software applications. Multimodal input and multimoldal output with personalized and intelligent interfaces. In designing and developing applications we have seen an evolution. We originally would write a page view with a model and a controller. MVC. This approach allowed for us to call CRUD operations on a schema and update view. We then moved towards event driven component based apps. We design resusable components like lego blocks and build event driven interfaces. This often requires a fetch or axios like library to make a call to the server and the return some state update by subscribing to or polling a graph API. In this next iteration we have a sort of search based conversational, agentic interface that renders our components on demand. Next best action is a set of recommended UI components. The agent has visibility into what the user sees, what other components it can show, what components it has shown, what state was shown in the components, what the users objective is; its a much more dynamic and rich experience. The data shown could be used to write an email summary, generate a chart that can be shared; it makes the interface actionable. The agent knows what you have clicked on, what you have highlighted, it can understand the UI state and using that can generate a response or the next component based on that data. The agent can understand the AI state, it has a its LLM, context, knowledge base, rules, attributes, actions, integrations; the conversation history combined with all of these things presents an entire new design spaces for building software applications. We can combine these two things for building new experiences; recommender systems vs forms, self service interfaces vs static portals, productivity tools vs list & record views. I am excited to continue to develop these next generation applications. It feels like these types of products will be baked into our current interfaces. We will have the option to have a list view with Search capabilities or an agentic interface. We can login into a portal and make our changes or have embedded agentic interfaces we can speak to.