OrganicJS supports reusable components with chainable properties and public methods, dynamic setters/getters, reusable widget markup using nestable HTML/SVG fragments and in-place fragment cloning and rendering, and sharing of data/behavior among components in a soft, decoupled manner via contextual component caching. OrganicJS re-envisions, re-implements and supersedes my earlier ideas around using D3, which can be seen here (while link is up, works on Chrome only)
One of the ideas is the support for borrowing of data/behavior of one component by another component in non-hardwired manner without use of events. Another idea is the building of “widgets” (collection of components) from reusable, nestable HTML+SVG fragments, as an alternative to the way it is done in D3 (although the framework can still be used in the D3 way without the reusable widget markup.)
Demo: http://idibidiart.github.com/organicjs/ Features Overview: https://github.com/idibidiart/organicjs/blob/master/README.md Repo: https://github.com/idibidiart/organicjs