Version 14, last updated by Igor Moreno Santos at May 20, 2009 21:41 UTC

What is PHP Coruja Framework

What would be the perfect framework for you? That was exactly the question we made ourselves when we first thought of doing one. It is not perfect yet, but we are working on it :)


Apart from the jokes, of course there is no such thing of a perfect framework or a perfect system, but there are always metters of opinion and style. So the point was to do things the way we thought it should be.

The framework is still in its conception fase so there is no stable release yet.


Main characteristics

This is the framework requirements diagram:

 

Coruja PHP Framework Requirement Diagram


Easy to install:
Copy, paste and play. You don't need a special instalation process, just paste the framework code in any operating system.
Easy to use:
The Template Component has a html like syntax, so you don't need to learn another language to write your templates.
Fast execution:
Code optimization is something we worry about generally. But we beleive the a smart loading of code controled by the Autoload Component and specially a good Cache Component are the key for a really fast application.
Pluggable components:
Everything in the framework is a component and the Components Manager and the Autload Component manage the components interaction so you can use the framework with a huge number of component combinations. Also you can plug components that are not even from Coruja as you can see in examples (links).
Trustable:
The framework is 100% tested using automated phpunit test units and the Error Component deals properly with erros of the systems developed using the framework.
Well documented:
Of course this item is essential, but you would be surprised how many projects don't take it as serious as it should be. The goal is to document virtually everything... from code lines to classes and modules. Including examples, tutorials, videos and diagrams. Because Coruja components are written to be used independently even outside the framework, a good documentation is essencial.

Because the framework is all made of components a good way of knowing it deaper is to know the components and their dependeces (link).