I have this thing with light and fast things….I love performance!
The thing is that I use my own framework to develop PHP, but what is a framework exactly? when is a framework or just a set of utils?
My point is that I don’t like frameworks such as Zend or others that are heavy, loaded with stuff I will never use, of course this can be great for backends where there’s lack of performance since there’s not many users…I’m talking about the scenario of front end.
In front end architecture the king is the MVC design pattern. Why not just create a bunch of utilities to have an easy fast MVC and then add the classes or functions that you need?
For this things can be great any of this solutions:
Fat Free: Light MVC framework with many extra functionality in just few KB, take a look, really good documentation. Just I don’t like too much the templating feature since PHP it’s actually a template engine it self, don’t forget that…
Miminal PHP MVC: I think the name it’s enough to know what’s about. This is more or less what I’m using with more functionality that I use in my projects, but the concept it self is great, MINIMAL.
The no-framework PHP MVC framework: This is more an article written by Rasmus Lerdorf (creator of PHP) regarding frameworks. Really interesting reading.
I still don’t have my framework clean enough to make it public but I just would like to share something really simple but at the same time really useful as it is the folder structure for my projects:
/Root - nothing here is public to the web users /cache - for cached files if I don use something as APC or Xcache /core - Here they go the includes of the application and external classes, aldo the main controller of the APP. /locale - Localization goes here /models - models for the APP classes /public - here goes the visible part of the web, normally contains just 1 php file and CSS's, images, htaccess. etc. /templates - PHP files to include as templates for content
It’s pretty simple but just following this you have a clean start and easy to control source, period 😉
Please if you know any other light framework let me know, since I’m building mine from the things I like the most of each of them 😛