Client-side templates

Client-side templates are an industry standard for rendering the user interface at run time. By using client-side templates, you ensure that your application loads faster, generates less server requests, and minimizes server traffic.

Client-side architecture

When your application uses client-side templates, the server generates JSON metadata instead of a browser-ready HTML markup, and sends it to the client system along with any case data. The client then combines the metadata, JavaScript templates, and case data to create the HTML-based UI that appears in the browser. If a UI component changes, the server sends to the client only the data that is related to the change, and the client reassembles the UI. This approach reduces server traffic and improves load times.

Upgrade impact

Pega Platform applications default to client-side templates as of the 7.3.1. release. While the technology is backwards compatible and components from earlier releases of Pega Platform continue to work with client-side templates, server-side templates do not support controls and solutions developed after the 7.3.1 release. For these controls to work correctly, the entire hierarchy of containers that host them must use client-side templates. For example, a Multi-select list can operate correctly in an optimized table that is nested in a dynamic layout, but not in an optimized table in a custom HTML section.

The following controls support only client-side templates:

  • Anypicker
  • Multi-select list
  • Timeline
  • Date Time
The following containers use client-side templates:
  • AJAX container
  • Dynamic layout group
  • Optimized Table