It follows a component based development approach, promoting modularity by having formal units with well defined inputs and outputs (aka components).
The main features and concepts of the framework are:
- An application is expressed as a set of concrete individual building blocks (components)
- each component offers interfaces and has interface requirements (receptacles)
- the composition of components and their interconnections is specified in a configuration file
- the user can then instantiate a composition (called application description) and start interacting with the component composition
- the framework also supports the concepts of interceptors between components, callback interaction patterns between components and the ability to replace components at runtime.
The framework tries to have a simple useful API and development approach.
There is more documentation on the project web page.
I hope you find it useful. The ultimate benefit with such an approach is that a system has a clear and modular design
which facilitates its the development and maintenance. If you like the approach you are very welcome to extend the system.