What is ExoWeb?
Instances can be fetched from the server using a simple querying interface, or they can be created on the client. Changes to the model are detected - including property value changes, list modification, and creating and deleting objects. These changes can trigger rules, drive UI behavior, and are replayed on the server with each asynchronous request.
Characteristics of the server-side model can enable some validation automatically based on type metadata. These validation rules react to user input in order to provide immediate feedback, which can be styled to your liking. Information about these issues is embedded in the model until resolved.
The ExoWeb client model maintains a set of transactions that have occurred, whether on the client or the server. These changes are replayed on the server as needed, which means that the client and server models are always in sync. Also, operations can easily be moved to the client to improve performance but can remain on the server when this is not appropriate or practical.