This image has three vertical blocks: View, View/Model, and Model. The View contains the UI Markup (HTML and CSS), including advanced components and HTML templates. The View sends events to the ViewModel which provides the JavaScript methods for two-way data binding between the View and Model. The ViewModel also sends and receives data from the Model, which contains the JavaScript methods to provide data services, including REST calls, in-memory cache, data access, and local storage. The Model receives the JSON data from REST/HTTP/AJAX calls.