Introduction to Laravel
Laravel is a very powerful, open source (MIT License) PHP framework. It is designed for application development and provides many useful features to make your code cleaner, leaner and easier to understand (and mantain).
According to its author, Taylor Otwell, Laravel strives to” bring back the joy to programming” by making the framework simple, elegant, and, most importantly, well-documented.
From my rather short experience with the framework, I definitely agree that Laravel hits these three points dead-on:
- Simple: functionalities are easy to understand and implement. If you enjoy how simple and easy CodeIgniter is, then you’ll love Laravel.
- Elegant: most of the framework’s features work seamlessly with very little configuration, relying on industry-standard conventions to lessen code-bloat.
- Well-documented: Laravel’s documentation is complete and always up-to-date. The framework creator makes it a point to update the documentation before releasing a new version, ensuring that people who are learning the framework always have the latest documentation.
Laravel aims to make the development process a pleasing one for the developer without sacrificing application functionality. Happy developers make the best code.
Its developers brought a lot of useful features found on frameworks implemented in other languages, such as Ruby on Rails, ASP.NET MVC, and Sinatra. Its core is built upon other projects’ code (i.e. Symfony2). Also, its use of Composer gives developers power of easy dependency management and easily replacing/adding other libraries to your project.
Laravel is accessible, yet powerful, providing powerful tools needed for large, robust applications. A superb inversion of control container, expressive migration system, and tightly integrated unit testing support give you the tools you need to build any application with which you are tasked.
Laravel supports a lot of features out of box (i.e. database migrations, REST, Redis, memcached, etc.). Views are built using PHP or its Blade templating engine. Blade uses syntax similar to other engines and supports extending views and using view components. In other words, you can easily build master templates or view component and reuse them multiple times. Artisan is a CLI tool of great help when building migrations, boiler code templates and much more.
Code is very well documented and clean, source code is hosted on GitHub. Anybody can contribute. Unit test coverage is good so bugs are really rare. Newbies can use tutorials to find out how to do anything. So if you’re thinking about moving to a new way of developing PHP applications, Laravel is the way to go.