NEW Laravel 12: No new features (And that's GREAT!) First look New starter kit
Let's talk about what's new in Laravel 12
laravel.com
Remember that it would be version 11 to 12 obviously so the first thing we always ask ourselves is how do we upgrade from a previous version:
laravel/framework to ^12.0
phpunit/phpunit to ^11.0
pestphp/pest to ^3.0
With this, we can know pretty well if we have important changes or not, so here we come to the upgrade part, you can search for Laravel 11 to 12 or something like that.
Update with few changes
It already tells you that it is an update with few impacts, therefore it is the so-called boring updates, that is, we have few changes, we do not have new things in terms of coding, it remains exactly the same.
All the code that we are developing on 11 is completely compatible with 12.
So you don't have to worry about something breaking in the packages section, which we talked about in the good part in another video, that is to say that if you have a package implemented for Laravel and the developer managed it up to 11, you have to wait until you update to 12 because obviously if not, it will break and it will tell you that you cannot update it, but that is another topic that I am going to cover in the part of updating an application from 11 to 12. In this video, I just want to talk to you a little about the new changes, which is what awaits us, so going back a little to the initial point to know exactly and not just believe what the Laravel people are telling us here, if it really is an update with few changes, a boring update, or if it really has many changes, you can come here to see what it is to migrate an application from 11 to 12. You can see that it is something very simple, you simply have to touch the composer file, place a 12 here and a little more, and well, the pest and php part. unit also change versioning although if you create a version of a more or less recent application in Laravel 11, that is, from about 4 or 5 months ago, that is, in October around 2024, you probably already have this version, so you don't even have to change that.
But here you can see that there really isn't any change, since if it were an important change here it would tell you, look, now controller is called, I don't know, controlcito, so you have to make that change everywhere, isn't that so it's a very simple update. But what's new here, you can see that it tells you, well, the support part here tells you that there are minimal changes as mentioned.
New starter kit
Basically the fundamental change is that we have a new starkit application, that is to say when we are starting already in the installation part we are going to see some subtle changes and also in the part when the application is created we are also going to have some changes.
Long live Laravel Breeze
The most important thing is that they killed someone again, they killed Breeze, yes, no, what I mean is that it will no longer be part of the official documentation, if you look for the official Breeze documentation, it would appear from version 11 onwards, and in version 12 it will no longer be present. I suppose that later on they will implement another one or something like that, but just like what happened with Lar, which lasted a year, they are going to kill Breeze, which lasted like three, so
Laravel Breeze, the other Laravel UI
Laravel Breeze lasted like two or three times longer, I don't know why they do this because in the end everything doing a little bit of my opinion translates to Tailwind behind and a little bit of JS and so on, what they do is change the design a little bit but call it what you want but the end is the same, it is the client part, it is the client web technologies, so anyway, a little bit my opinion, it already smells a little bit tedious that they are constantly changing the same thing because no, at least in my opinion, I don't consider it that relevant because here what you are doing is jumping all the time from one version to another, 11 didn't even last a year, Laravel 11 was launched in March and they killed it in February, that is, it lasted 11 months 11 11 months Laravel 11 11 months here a play on words, so it seems a little bit terrible to me to really handle things that way, well that's a little bit my part of the criticism, let's continue with what was commented then
More consistency in the starter kit
Apart from the official page that is prettier we take it apart if I find it here it is here it tells you a little more clearly that I do like how everything is integrated since on the one hand before we had Laravel on the other hand we had Jetstream that they killed too or better said it was like they finished absorbing it or something like that em now we have everything a little more integrated that is to say now everything feels like a single ecosystem and not a piece of something on one side and another piece of something on the other side and I mean Breeze on the one hand Laravel on the other hand Inertia on the other hand Jetstream on the other hand which in the end is part of Livewire Inertia was part of Jetstream now everything feels a little more integrated now we will see that right now when we cover the installation part here on the very pretty page that yes they changed but curiously and joke aside obviously to make this page you do not use Laravel since this is a client unless it is using Vue or Livewire as such to do this but really the css javascript part as who says is not It is not part of Laravel as such, I mean it is the core on the server. Here Laravel tells you that it is alone, that is, the core only has to be set to the Livewire part and there you can see it a little.
Create a project in Laravel 12
Here I am also assuming that you have at least php 8.2 which is the minimum requirement for Laravel 12 is 8.2 the same requirements as 11 eh basically it is 12 is 11 with changed cover well we come here I obviously have my I am using Herd here here I can show you the configurations here I already have php 8.3 and it is the one I am using we update:
$ composer global update laravel/installer
Or we install:
$ composer global require laravel/installer
We have options:
None
Vue
Laravel Livewire
And select the one you want.
When you open the app, you will see another Laravel service, which is Laravel Cloud, which is nothing more than a server for Laravel.
The more options the better but again it is not part of the service as such so here it is for, I don't know, to make some additional money because you can now do the deployment, as they say, with 100% integration between all the functionalities that you have in a project in Laravel. You no longer have to worry so much about whether this or that server has a certain functionality or you have to pay extra or whatever. Obviously here all the functionalities that we have in Laravel are going to be supported in some way but of course paying for it but there we have it as an additional service of course it is celebrated that now we have more options as consumers.