Methods and apparatus, including computer program products, for processing
a user interaction with an application, such as a browser-based
application. A user interaction with the browser-based application is
detected at a software framework. The browser-based application is
executing in a browser at a local computer system. The user interaction
is processed at the software framework, where processing includes
determining whether the user interaction can be handled locally or
requires access to a resource at a remote computer system. The user
interaction is processed based on a result of the determination. A data
item representative of the user interaction can be created at the
software framework and stored at a data store. The data item can later be
retrieved and the user interaction represented by the data item
reprocessed at the software framework to replay the user interaction.