Surf provides a View
Composition framework that lets you define user interface items such as:
You can define views of pages including specific pages, page formats, and page types.
Templates and regions
A template is a reusable layout that you can build once and then apply it to many pages. Each page can then benefit from a common look-and-feel that was pre-prescribed. By changing the template, a web designer can affect many pages all at the same time. This is especially meaningful for large websites where you might need to manage hundreds, if not thousands, of pages.
Surf lets you bind components to regions. A component usually associates a region with a web script.