On Laravel

Hi, friends!

Finally I was able to find the time to work through a full tutorial on the PHP framework Laravel. And I have to say: What I saw there is pretty cool.

First of all, there is a build tool for PHP called Composer, which takes care of dependency management, comparable to Gradle in the Java ecosystem. With Composer and Laravel’s own CLI tool Artisan, you can generate a Laravel project with a decent setup of directory structure and example files.

While this may be a bit overwhelming for an absolute beginner, it’s great if you have a good understanding for alternative technology like Angular + Spring, because you can recognize how all the things you know are done in Laravel without going through tons of tutorials.

Laravel also comes with a built-in development server that you can run to test everything you create. Better than that, there is Laravel Homestead, which is a preconfigured virtual machine that you can download and user for development instead of having to set up your local machine with all the software tools. Homestead has PHP, Composer, MySQL, Node, Git and much more preinstalled; while I would probably still setup my development machine for any long running project, this is really handy for playing around and get started.

There is a templating engine named Blade included in Laravel, that allows to assemble your HTML pages from building blocks; and Laravel has it’s own database migration management, similar to what Flyway does for Java projects.

To sum it up, with Laravel there is a powerful, modern framework for PHP that seems to offer a similar set of features as Spring Boot. Using PHP nowadays does not mean to hack some scripts together by hand. From the short look that I had at it, I don’t see any reason why I should start a new projecct in PHP/Laravel instead of Kotlin/Spring Boot, but in case I would have to work with PHP/Laravel for whatever reason, I looks like it would be a pretty enjoiable experience!