This week I've been looking at Laravel, a relative newcomer to the PHP framework arena which already has quite a good following. I've been looking at various frameworks recently, trying to find something that would suit the various types of work we do within Nomad, a task not lightly undertaken. So far we've looked at SilverStripe (our current preference), CodeIgniter, Drupal, Symphony and numerous others. While we like aspects of each, we always feel there's something lacking, or could be done better.
Laravel is a very clean, lightweight, MVC OO focused framework - it's taken pointers from the others in the market and implemented the best bits, and dropped the rubbish. It has configurable routing which can dynamically map to controllers (such as CodeIgniter), ORM (PHP Active Record), easily configurable environments, authentication and numerous other handy classes. One really cool feature is its command line tool - 'Artisan' which can be used to run tasks like migrations, cronjobs, unit tests and generating application keys amongst other things.
Laravel also supports a plug-in based architecture known as 'bundles' - these allow for quick and easy application extension through 3rd party code and allow you to hit the ground running. If you feel inclined you can also create your own bundles and submit them to the community.
Over the next week or two I'm planning on going through the documentation in a bit more depth, and then creating a small demo app - I will be documenting the progress here. Stay tuned.