After months of development the folks at JoomlaTools have finally announced the Nooku Framework project publicly. Nooku Framework is an Object-Oriented, full-stack but very lightweight web development framework for Joomla 1.5. Anahita Social Engine is built using Nooku Framework.
Nooku Framework is installed as system plugin on Joomla. On the system initialization it replaces the core Joomla elements such as database, application, document with its own enhanced version.
It also offers it’s own Factory Class called KFactory that would let the developers to virtually extend or modify any part of Joomla without editing the core files.
For application development, Nooku Framework offers a far better implementation of MVC (Model-View-Controller) design pattern that what currently Joomla has. RESTful controllers, enhanced view classes with ability to inject custom template rules and models that recognize their own tables are the few to name.
Being a Ruby on Rails developer, what most attracted me the most to Nooku Framework is its own implementation of Table Gateway and Row Gateway Pattern. This implementation sort of works the same as the Active Record. It uses naming convention to map your table objects to the actual tables and it encapsulates the database access, and adds domain logic on that data.
Here’s an example of how it works
Even though Nooku is quite young and still taking its shape, it has enabled development of many high profile open source projects. Bundled with Joomla platform, Nooku Framework undoubtedly provides all the tools a developer needs to start the next generation web applications.
To learn more about Nooku Framework please visit their website at http://www.nooku.org/en/framework.html