...
uPortal's greatest need from a Javascript framework is for templating. A number of current portlets and core libraries in uPortal support the binding of content and event handling to flexibly-structures HTML markup. For example, an internal portlet browser library is used both to generate the "add content" menu in the uPortal customization interface as well as the portlet administration portlet's list of portlets:
Binding content to multiple flexible templates allows re-use of javascript code, creating a smaller, more stable, more focused codebase. Allowing flexible markup also allows adopters to customize portlets without deep changes to javascript code.
Examples:
...