Quick search:

abstract user interface

Generic user interface that can show and adapt to arbitrary data/objects

To do this the user interface applies certain conventions or transformation rules that react to the meta data about the data/objects shown. As a result different kinds of data/objects will be shown differently but in a consistent manner.

However, user interfacing is not an exact science. A user interface should be fit for the  tasks that different kinds of users will use the application for. These tasks could be specified and then more rules could be applied, but there will always be an element of interpretation as well as exceptions to the rules. And then there is the 'look and feel' that requirers empathy and an artistic sense of style. The solution of phpPeanuts is to allow and facilitate the application developer to replace small (and large) pieces of the abstract user interface by concrete pieces of user interface. This is mainly done by specializing classes to be used for certain object types and then overriding methods.