This post refers to DotKernel 1, based on Zend Framework 1.
If you are looking for DotKernel 3 related posts, go here.

After a longer wait than usual, DotKernel 1.5.0 was just released. Due to the large amount of changes and the long time spent in development, we chose to skip 1.4 and go straight to 1.5.0.

Here are a few of the many changes to DotKernel in the latest release:

Highlights of 1.5.0

Switched from Dojo to jQuery

Starting with 1.5.0 we’ve switched from using Dojo to jQuery. This doesn’t mean you can’t still use Dojo in your own projects, but only jQuery will be used and maintained in the DotKernel distribution.

New designs

We’ve redesigned the admin site, with new themes, and a dropdown menu, as well as a new and simpler design for the front-end.

Model inheritance

Up until now, there was a lot of code duplication in models. For example, in the user model, you might have a getUserById function in the admin as well as the frontend. When you’ve got more models and more modules, your project can start having a lot of copy-pasted code.

To prevent this, we’ve introduced a Dot_Model class, and a way to define global models that are inherited in the admin and frontend. This way, you can have User class in the admin that only has methods specific to the admin module, a User class in the frontend that only has code specific for the frontend, and they both inherit the Dot_Model_User class which will have all the common code.

Dashed controllers

We’ve changed the way the controller name is parsed, so that you can have controller with multiple words, split with dashes, without breaking the coding standard (for example, will call SearchArticleController.php)

Zend Registry reorganization

We’ve changed the structure of the registry, for more about this, please check this blog post.


There have been about 250 commits in our SVN repository since the latest release, so we can’t cover all changes in this blog post. Please download DotKernel 1.5.0 try it out yourself and tell us what you think.


Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>