🔴 Laravel 13, Vite+, SoloTerm & More!
Chapters8
Host greets the audience and outlines three main topics to cover in the stream.
A hands-on night of Laravel 13 upgrades, Vite+ sanity checks, SoloTerm experiments, and AI-assisted tooling with Nunomaduro.
Summary
Nunomaduro leads a sprawling live stream nerding out on Laravel 13, Vite+, and new developer toys. He kicks off with a live upgrade test using the official Laravel upgrade command, showing how Boost v2 can drive a seamless Laravel 12-to-13 transition. He then digs into Vite+ (the Vite-based tooling layer) and demos how Vit Plus aims to unify the modern dev stack with a single CLI. The stream also showcases SoloTerm by Adam Francis, a free, AI-friendly terminal assistant that can run auto-start agents and manage projects locally. Throughout, Nunomaduro riffs on practicalities like ensuring composer dependencies, PHP versions, and test suites stay healthy during upgrades, and he even pivots to JetBrains Air as a potential code editor experiment. He shares real-world friction—watching test suites fail and debugging lint config in real time—while praising the AI-assisted migration flow that feels almost magical. The session ends with reflections on where AI and agent-based tooling fit into daily dev life, plus a plug for upcoming collaborations with Mostly Technical and other Laravel luminaries. It’s a high-energy, practical look at what it takes to stay current in a fast-moving Laravel ecosystem while juggling multiple tools and editors.
Key Takeaways
- Upgrading Laravel 12 to 13 can be automated with Laravel Boost v2 using the slashupgrade v13 command, simplifying dependency and config updates.
- Vit Plus provides a unified linting, formatting, and dev-server workflow (ox(fmt/oxlint equivalents) through a single CLI, streamlining tests and builds.
- SoloTerm by Adam Francis offers a free, project-scoped terminal environment with auto-start agents, making it easy to run Laravel tasks and front-end tooling in one place.
- JetBrains Air is demonstrated as a lightweight, AI-assisted editor experience that can interact with code bases in real time and provide diff-centric feedback inside a browser-like UI.
- The migration path can be smooth but still requires manual checks—e.g., attributes migration in models may need additional prompts or adjustments beyond automatic AI handling.
- AI-assisted tooling (like Vit Plus and SoloTerm) is increasingly shaping day-to-day workflow, but humans should still validate and tweak outputs for stability.
- Upcoming events and collaborations (e.g., Mostly Technical mashups) are highlighted as opportunities to explore AI-assisted development further.
Who Is This For?
Essential viewing for Laravel developers who want to see a real-world, no-fluff run-through of upgrading to Laravel 13, validating Vite+ workflows, and experimenting with AI-powered tooling like SoloTerm and Vit Plus.
Notable Quotes
"Works like magic."
—Listener notes how the upgrade command performs smoothly during the upgrade test.
"The upgrade command is the easiest upgrade I have ever made in Laravel."
—Highlighting how Boost v2 simplifies the Laravel 12→13 upgrade flow.
"VP migration just worked."
—All migration steps in Vit Plus header completed without major issues.
"Vit Plus is the unified tool chain built by Void Zero Avenue company announced blah blah blah blah and wraps other tools in the single CLI and config."
—Describing what Vit Plus aims to do in unifying tooling.
"JetBrains Air looks sexy and surprisingly practical for live-coding sessions."
—Impressions of JetBrains Air as a potential editor for the workflow.
Questions This Video Answers
- How does the Laravel 13 upgrade command work with Laravel Boost 2?
- What is Vit Plus and should I consider it for my Laravel project?
- Is SoloTerm really a viable free tool for managing Laravel projects locally?
- What are the benefits and caveats of using JetBrains Air for PHP development?
- How do you migrate Laravel model attributes when upgrading to Laravel 13?
Full Transcript
Black next beat. You're white. One What's up PHP family? How everyone is doing today? Welcome back to another live stream. Excited to see you all. How everyone is doing man? App excited to see you all. How everyone is doing? 3733, how you doing? Nice to see you. Mel, how you see Oscar? GTCS, Mac, Nicolak, Rowan, Bruno, developed by Josh. What's up everyone from India? How everyone is feeling today? Sh we have an exciting live stream. Okay, I have literally three topics I want to check it out. Okay, three topics I want to check. Laravel 13.
I want to test the upgrade command thing from boost. I want to try as well uh vit plus. We are going to do all of this using Adam Franc's uh solo terminal. It will be exciting. It will be exciting. So, I wanted I wanted to I wanted to save some time to try all this stuff for the very first time. So, I literally just save it for today's live stream. How you guys doing? How you guys doing? Garcia, nice to see you. Benjam, how you doing? Joanito, how you doing? Hi, Vlad. What's up, dude? How you doing?
Oh, you're actually the Vlad. The Vlad, my friend. Nice to see you, dude. Nice to see you. How you doing? Hard from Twitter. How you doing as well, man? Excited to see you all, Shad. Excited to see you all today. We have an amazing live stream. Okay, I hope you guys are are ready. Just buckle up because things are going to get hot, man. So, the first thing I want to try it out is this new beautiful thing from Laravel. Call it uh upgrade to Laravel 13. So, we have a project here which are going to test this command.
Okay, hopefully we'll just upgrade for Laravel 13. Easy peasy and it will just work. There's there are a few things that I want to test like I want to test if I will get the V8 upgrade automatically as well and all of that. So that's that's one of the things we are going to do today. Okay, just all that stuff together. All right, then I want to test the new V+ situation. Okay, so you probably have seen on Twitter people talking about V+. If you haven't, honestly, I don't know that much. We are going to find all of this together as well.
And the final thing I want to test today is this thing called it solo term from Aaron Francis, which is one of our community, one of us. And literally he he have developed this apparently free thing. I was confused about the pricing, but apparently like this thing is like free for four projects, meaning that we can literally just use this stuff for free. So, it'll be awesome. Shad solo term. I have installed it already. So, hopefully this will be exciting for today's live stream. It lally looks like this, which looks awesome. Okay. Okay. Oh, now that I'm thinking, I don't think I have configured cloud code and everything.
I'm wondering if I have to do all of that up front. [ __ ] that's a problem. So I haven't configured cloud code or codeex or whatever. So we are going to find all of that together if we need to do some any sort of configuration or anything like that. All right. So all the entire live stream will be done on this new terminal and it will be dope. It will be dope. Hello. Hello. Hello. Hello. Hello. Looking forward. Me too man. You GTSM is saying the following I have tried yesterday. You mean the command to upgrade to L13.
How did it went? Oh. Oh. Oh. Works like magic. All right, chat. It's time to start things off. Okay, that's the first thing I want to do. So, what I do have here is this Lavel starter kit, Inertia React, which is a starter kit from mine. It comes with a bunch of stuff already you know even stuff which is not that trivial including things like you know like all this wayfinder situation numad essentials you know recctor for laval like all the stuff I love so there is like um you know a a small medium migration to do here from laval 12 to laval 13 and I want to see how that command behaves what's up dude how you doing pua what's up dude that's the one you updated I updated did today too.
Oh, you mean via pull request. Oh, I'm I'm sorry, dude. I kind of want to test it out the command. So, I think I want to test the command, see how it goes, and then I check your pull request, dude. If that's okay. If that's okay. Slash upgrade. Let's see how it goes. All right. So, what else do I have to do today? I want to kind of talk with you a little bit about news. What do we have about news? Do we have any news here? H, that's a good question. That's a good question.
Do we have news? Maybe we have news. Dudes, I have to share this with you. This was the most weird experience I ever had in my life. Just hear me out. Basically, I was in cloud code during the cloud code situation I always do all the time. And I was just like, you know, make the I created a new folder. I just typed cloth on it and then suddenly asked something like this. can you develop this um term gram thing which is like a telegram for the terminal but just build by yourself entirely and just let me know when it's done.
So I did it without bypassing permissions. I did it without like with a full thing, you know, just all in. And suddenly he built the entire thing, okay? But on Lavl zero on past PHP and all that [ __ ] And I was like, wait a second. Like from all the stacks in the entire world, all the languages you have choose PHP. Then from all the CLA frameworks, you have choose lot zero. And then from all the testing frameworks, you have choose past. And I started asking these questions like why did you went down that path? And the guy was like I did that because you are Noo-Noo Maduro and you know you are the creator of the past and XYZ.
And I was like how the [ __ ] do you know that you know and he told me like oh I just took the the freedom to go to your root folder and just start crawling all these p all these projects you have locally but also you are Num Maduro so probably you like lot of zero and [ __ ] like that. That was [ __ ] scary dude. And I was like holy [ __ ] Like if he if cloud code can literally bypass permissions it start like crawling all the stuff I have on my laptop and I have like private stuff here you know I have pictures with me and my wife and stuff like that I don't I don't want to share obviously and there's like a bunch of stuff and I was like [ __ ] you know that's super creepy.
Exactly dude I was super you know and then I say something like this. Uh what else? What else? What else? Yeah. And then I just went to this. So basically I don't know if you guys know but claw have something call it dashclaw.json JSON or whatever where you can just basically say from this point you are sandboxed and you shouldn't go elsewhere and I asked for the same prompt literally the same app can you just do it again and it said the following it still went with Laravel zero and he still thought I was numaduro just because my username on Mac OS is Nun Maduro so that's how sensitive literally those AI tools can be when making decisions for you just because my username on Mac OS was Nun Maduro just because of that he have choosed PHP he have choose laval zero and kind of the full stuff crazy crazy stuff honestly just it feels like a horror story if you guys have horror stories like that just don't hesitate on sharing but I wanted to share this one insane stuff uh what else what else what I have here a lot of new ass is happening and I will be one of the speakers together with Taylor and Francis Nooah what else and there's a few speakers announced already one of them is this dude torch 10 ball which is apparently working in AMP code xz.dev looks um famous.
I don't know. You should rename your num from Taylor to Numadur. Oh my god, that's so funny, dude. That's so funny. But honestly, it felt, you know, scared the [ __ ] out of me for a second. What else? Uh this one is sexy. This one is sexy. [ __ ] Next week, Ian Leman and Aaron Francis from Mostly Technical are coming to my channel. This will be super exciting because, you know, the guys are like a a huge combo, but we are doing a mashup with Nuno Nation. So, this will be like a wombo combo mashup situation and they will be in for an hour or two.
We are going to talk about AI, agentic coding, what replaces that devs and what what doesn't and hopefully it will be super exciting. Okay, by the way, chat, if you just arrived, my name is Nun Maduro, PHP Laravel developer. I love what I do. But also, if you're enjoying today's live stream, go all the way down, subscribe to the channel, put like on the video, all that cool stuff. All that cool stuff. So, this is exciting news, chat. I'm going to send you the link so you guys can subscribe already. Here we go. Here we go.
Here we go. Here we go. Here's the link. My Twitch chat today is literally dead. Is anyone there on Twitch? YouTube is hot though, which is good. which is good. New Laravel blog post comparing AI models capacities with and without boost. Oh yeah, I've seen that. That's a good one. That's a good one. That's a good one. All right, so that's done. What else we have? Uh I think it's time to go. I think we're ready to go. Shad, we ready to go. Oh, also Laravel prompts have this new stream situation which potentially we're going to test today.
Okay, this is almost like a Laval 13 feature, honestly. Um cuz you can literally now stream stuff from the console. So I want to I want to test this one. Check that out. It looks really really cool. You just type this like uh stream method. You can just have this. I think this is fantastically great honestly. So I want to test it out. Okay. Mr. Pabell is saying the following. I see many bugs on my daily life projects after they starting adopting AI. Yeah, for some reason, I don't know if it's AI, I have seen more downtimes from services than ever, honestly.
I don't know if it's downtime, though. Okay. Okay. All right, Sh. Let's get started. Let's talk a little bit about Laval 13 a little bit. So, let's go into the upgrade guide and let's actually click on releases notice. So, I think there's basically two things we need to talk about. The first one is that Laval AI SDK, we have made a full streaming video about this topic. So basically now you can do stuff like just make me an image of a donut and bam bam boom just works and [ __ ] like that. So you can use models and everything.
It really is just nice. But also you can now use attributes in this one is really exciting meaning that you can go to your models and basically just use attributes for fillable for uh you know for the table for all these various things that used to be properties they now can be attributes which I think is really really good. Okay, now I have a project here which is this one and this is a regular LF12 project with controllers as you guys can see have a bunch of [ __ ] have inertia have react you have actions like this is a huge pro well a medium project let's just call it that way now medium project with models and everything and there's a few things like this stuff for example which now needs to be converted to an attribute and I want to see how that how well that command behaves now something worth to be said is that I want to make sure I am running on the latest version of the 12 version at least and I want to make sure also we have a passing test suite.
Okay. Okay. So, let's actually run composer update. Have this nice and smooth. Let's go into our composer.json and I want to make sure that I'm on boost v2 and I am not on boost v2. By the way, I've seen a lot of people running into this issue which is they say the upgrade command is not there and the only reason it's because they are running a old version of boost. Now when you don't know if you're running old versions of stuff, you can run this composer outdated. Now this command will tell you like how old you are in terms of dependencies and it will just check them all and now you have a nice thing on the terminal.
Just check it out. Check it out. It's tanking. Here we go. So I'm obviously running a old version of Symfony because I'm not using Lavl3. I'm running a old version of PHP Unix because I'm not using past 5. Uh what else? I'm running a old version of Boost as you guys can see. Here we go. We are on the version one. Version two is available. Also running a old version of the inertia adapter for any reason. But obviously a very a very old version of Latavl 12. And we are going to migrate this to Laravel 13 13.
Beautiful fam on having fun today which is really really really cool. Prompt functions will help. Yep. Yep. Yep. Yep. Yep. I want to try it out today. Hopefully. Your tests are going to fail. Really? Really? Yep. Well, I do expect them to at least have some pint upgrades. So, by the way, chat, I literally just released a new version of Laval Pint come with a bunch of upgrades. Let's make sure we are running on PHP 5. We are. Let's run venderbin pint to have pint styling this project. No changes. That's nice. Let's now run composer test to see if we have a passing testuite.
We don't because of coverage. Did I fix coverage already? I don't think I did. How about how about composer lint? Will this run? Well, wait a second. I should have coverage here. Which version are we talking about in PHP five? Okay, that's a problem. Why I don't have coverage yet? Let me fix this real quick with my her configuration. So, I'm going to open configuration files. I'm going to open this beautiful php 8.5.in thing and I don't have xdebug here. Okay, give me a second chat. Give me a second. It's the moment to add xdebug to my PHP uh 8.5 configuration for Okay, let me see.
Xdebug mode. That's the only thing I need to do. Wow, that was easy. Okay, let's do it. XD debug mode. Bam. Coverage. All right, that's done. Does this means that I now have coverage? Let's see. Let's run it a test. Okay, test speed running. Will the coverage running? That's the question. It did, I think. Oh, okay. Okay, let's run composer test once again. Yes, it did. It's running coverage. Okay, so coverage is fixed. Now we have a failing test for some reason which we are going to debug real real quick. Expect to see Laravel on the page blah blah blah.
Woo. What did you saw then? Let's run this with d-debug. Can I debug this situation? Oh, I may have to run a few things here. I may have to run npm install npm rundev. Well, that's real. Don't forget to cover ciliz. We are going to check that in a second. All kits. Yeah, all kits are running now on PHP 8.5. Use PHP 8.4, bro. Why would I use PHP 8.4? Don't waste time, dude. I'm fast, dude. You know what I mean? I am fast. Here we go. Test passing. Easy peasy lemon squeezy. Now it's running the full the full deal.
So let's make sure we have a passing test before we run the upgrade command. Okay, so a few a few refactors done by recctor php. I kind of want to skip this rule real quick. Let's actually do that. Uh where is my uh weed skip situation? Here we go. Okay, I don't want the override crap. Oh, it's already there. Oh, override properties. Is this new? I didn't even know that we could override properties in PHP. That's new. What else we define on vector php? That's it. Just override. Okay, good. Let's type composer lint. Make sure recctor is okay and happy with everything.
Recctor will fail. Well, it's fixed now. We don't we don't want that override attribute. Why npm? That's a great question. I literally forgot an file extension.ts. Oh. Uh, okay. Let's actually run bunny install instead. I forgot. Uh, bun run build. I'm wondering if that was the reason why my playright situation was failing. Hopefully not. Okay, not okay. Cool. Now we have oxlint failing. Why is that? Failure to parse ox configuration file. Didn't we fix all of this before? No. No. Does PHP stand works well with AI? works fantastically well, meaning that we'll literally tell AI what's wrong.
You know what I mean? So, you should absolutely use it. Okay. All right. Sh. We have one last thing to fix. Failure to parse OSLint configuration file. What do you mean? There is no configuration of OSLint, I All right. Let's run Oxlint individually. Okay. So if I run bun run test lint still failing. All right, it's the moment to use cloud code. Okay, let's use cloud close real quick to fix this situation. Let's go here. Uh give me a second. Why have not placed that already? No good. No focus in your streams, huh? Projecturo starter kits, I think.
Yep. Uh Laravel starter kit. Inertia react. Here we go. All right, let's open cloud real quick on dangerous situation. I always forget like how to run the dash configuration situation. So, I need to Google it real quick. Cloud code dash skip dangerous whatever. How do I run that? Here we go. Thank you. Thank you. Thank you. All right. my ox lint. Which bug it was? Oh. Oh. Here we go. All right. So, my oxint is failing because of this. Can you fix it, please? Please, please, please, please, please, please. All right. Cloth code is coing as we speak.
A good future video with Vid Plus. They are good friends of Laravel. Oh, yeah. I love vit and I want to kind of check um you know what vit plus is about. I'm still a little bit confused on what vit vit plus is about. I'm wondering if vit plus is just an allias for ox lint and oxmt and um you know and v test and everything. So I'm wondering like how much of V+ will just be an alliance to existing tooling you know literally curious about all that situation. Does any of you is using V+ by the way?
Type on the chat yes if you're using V+. Type no if you're not using V+. Literally curious about that. Being so famous even AI knows you. Oh my god. I'm not famous, but yeah, if you search Nuno Maduro GitHub, you will find some stuff. That's for sure. That's for sure. Okay. Developed by Josh using Vit Plus. Vit Plus is a grouping of the tooling. Yeah, I kind of expect to just have access to oxm FMT. Um, well, Vit of course, but all that stuff will just be there. Okay, apparently I forgot I didn't have this this schema situation.
By the way, this is just ridiculous. Okay, I don't know who is developing ox linked. Just adding an empty JSON just because I have to. It's just ridiculous. Okay, so this is literally adding a empty JSON. Let me just confirm this. It did like with a few other things, but it did. All right. Well, is it working now? That's the real question. Is it working now? Let's see. All right. Let's run the full drill. If I run composer lean, this will just uh hopefully. Yep, yep, yep, yep, yep. All right, composer test. Make sure the entire test suite is good to go.
Almost there. Yep, yep, yep. Is running xlint already. Oh yeah, baby. I need to upgrade the npm package like on the very early early thing of the stream. So, we good to go, Chad. All right, this is good. This is just perfect. So now I can just do this. Uh, this is a starter kit. So I'm going to remove both log files. I don't want log files on this project. Okay, just because this is a starter kit, I'm going to remove them. I'm going to type g add and I'm going to I'm going to just say g commit-m fix test suite.
All right. Bam. We're good to go. Oops. I litally also need to remove the bund.log file. Where is the bund.log file? Here we go. uh removes.log file. Okay, so we good here. Now it's time to literally test the boost situation. So I'm going to go to composer.json. I'm going to make sure I am using the boost v2. Boost v2. So we need to fix this. Okay, let's type composer update. Making sure we're running on boost v2. This will be exciting. Uh, let me just read the documentation real quick. So, the only thing I need to do is literally type upgrade v13.
That's it. Yeah. So, let's read this real quick. You can automate your upgrade using laval boost is the first party blah blah blah blah blah blah. Once installed, you just have to run slashupgrade v13. And this will just work on cloth code. All right. Cool. Uh, So, I just I just ran boost update. Do I need to type boost um PHP doesn't boost update or anything like that? Cuz that would be a good question. I'm going to type boost install. I kind of want to go from scratch. So, AI guidelines, agent skills. Yep, yep, yep.
All this good stuff. Do I want fortify? I don't think I want fortify. Do you want to install RDMCP? I don't think I do. Uh I'm using cloud code. I'm using cursor. No, I don't using cursor. using Juny. Yep. Sometimes uh in open code. Yes. Sometimes. All right. This is enough. I'm going to also put Codex. Yes. Yes. Yes. Oh, Bruno is saying Laval Octane has a lot of L13 uh issue. Can you tell me what issue it is? We just fixed something by the way. Uh uh yesterday though, not today. Okay. V plus will fix that.
ox linked.json situation. That's nice. That's nice chat. That's nice. By the way, chat, does any of you already upgrade for lot of 13? Type yes on the chat if you are running a lot of 13. Type no if you are not yet. And why not though, you know, if it's simply an upgrade away, like a slash command away. Yep. GPT53 codeex is good with laval coding 100%. 100%. So, I want to kind of leverage this moment to shift a little bit to solo. Okay. So, we are in the process of running or having Laravel being upgraded to Laravel 13 using a slash command.
Okay? And I want to do that on the Solo app. Now, let me just tell you what is Solo. By the way, this is not sponsored. This is not sponsored. Okay, Shad. This is literally generally trying something for free. And Solo is for free, so why not, right? So solo is this project from Adam Francis and apparently allows you or gives you a very good agentic flowing vibes on your desktop and I'm going to try this today. This is available only for Mac OS. Okay, Shad. So I have downloaded and I have the project right here.
So the first thing I want to do is click on add project. Okay, that's the first thing I'm going to do. I'm going to just do that offstream real quick because I have a bunch of [ __ ] here. Here we go. Let's go to noodle madoodle start a kits and go with inertia react. Okay, I just added check this out. Check this out. I just added this project is asking me a few questions. Okay, so it detected Laravel in NodeJS. So it's suggesting me a couple this is interesting. So it's suggesting me a couple of projects uh processes.
One of them is PHP artisan serve which can auto start. This is interesting. Another one is a Q which I want to auto start as well. By the way, I think Adam Francis or I can just do that myself per maybe should just change Q work to Q listen locally chat. By the way, locally you guys should always be using Qlisten. There is absolutely no reason to use Q work locally because qwork will not react in your code changes. Okay. So if you have Q listen automatically and automatically and autoonation will just make your Q workers use always the the latest version of your code.
Okay. So we also have logs here. Let's actually have some logs. I'm going to include this. We haveuler. Let's actually have as well. We have lot of pale. Oh, we don't need logs if we have pale. That's a good point. So no logs. We have pinted which I don't want to with npm rundev which I don't want to either. So basically here we need uh bum rundev. So I'm going to just remove this as well. Configuration storage. So this will create the solo.ml file. So all my teammates can I assume leverage this as well. And enable auto starts.
When solo launches all processes marked as auto run will run automatically. Yeah, I think I'm fine with that. So let's add this. Okay. Okay, apparently just went all the way top and I have all this stuff which I think is from this new project. Oh, it's not started yet. Okay. Oh, interesting. Can you guys see it? I don't know if I can make this bigger, by the way. Oh, I can definitely move this around. Okay, so apparently the server is starting, meaning I can just copy this and run this on my terminal. Very interesting stuff.
Nice. So this is my app, my React app. Okay, may actually move solo here. Here we go. So I can see the output of my serve. Nice. I can see pale. I can seeuler. I can see Q's. Nice. Good stuff. I can open a new terminal right here. Nice. This is a regular terminal. I can see this lagging a little bit. I don't know if it's lagging or if it's just me being an [ __ ] I cannot also make it bigger, which is really annoying. So, I'm trying to click on command plus to make it basically the terminal a little bit bigger.
And I can remove agent. This will just clean this out. Interesting. stream offline. Oh [ __ ] Oh my god. Is it off? Still off. Oh no. I really need to figure figure it out why this is just so broken. It's back. It's back. It's back. We back. [ __ ] Any lag whatsoever? Any any problem with the audio? Anything? Let me know. If it's any problem, let me know immediately. It's very glitchy. All right. Let me know. Better now. Okay. It's the audio video. Everything is just perfect. Look at that. So many cool people today. Zoro, Vlad, you stronger than ever.
Nice, nice, nice. Shad, I'm honestly surprising how polished this UI looks. This is looking kind of cool, honestly. I can remove this agent. Nice, nice, nice. Loud and clear. Yes. Yes. Yes. Yes. Did you guys went to the gym today? Super important, chat. Did you guys went to the gym? Come on. Come on. Did you guys went to the gym? Important, chat. Yes, that's important. All right, chat. Where we were? So, basically, I have my agents here. I have my terminal here. I have all my commands running here which is very interesting. Okay, Q jobs and everything.
Um, so here I think I can just type upgrade Laravel 13. This is so cool. All right, chat. So this is what we have. I can just type upgrade Lavel vers version 13 and that will just appear. The the Yeah, if I'm honest, I'm going to be honest with you. I would love to be able to tweak the zoom situation. Okay, this is where I tweak the zoom. Um, so I want to kind of give a bunch of bold terminal. Yes. Yes. Yeah. Let's go to 16. I want to make the font much bigger. How do I make the font bigger?
Maybe here. Yes. [ __ ] yeah. Light mode. What is this? Oh my god. Can you guys see anything? All right, it's fixed already. Jesus Christ. C keys. What do you mean? Oh, hot keys. All right, we need to check all this stuff out. This is looking cool. Honestly, looks polished if I'm honest. Notifications. What is this? Oh, some kind of bell notification. What is this? Oh, this does not work. But I assume, oh, this does work. I can see I can hear it basically. Flashbang for real. I see a sidebar with a bunch of [ __ ] I don't care about the CPU usage, so I'm going to remove this.
I don't care about the project memory, so I'm going to remove Open in editor. Oh, open in terminal. Reveal in Finder. Cool [ __ ] man. Hot keys. Oh, so I can quickly open the terminal by typing command T. [ __ ] I'm going to type command T. Okay. Did it work? It did not work. Maybe not this one. Maybe not here. OH, very interesting stuff. Uh, very interesting stuff, Shad. If you type command T, you just get this automatically. If you type command key, you can go to various projects. If you type command F, what happens? Nothing. Okay, cool.
That's not bad, honestly. Good stuff. Good stuff we have here with solo. All right, agents. What is this? So, yo, this is nice. I don't I don't want Gemini. I don't want open code. I don't want Well, I want codeex. I don't I just want codeex in cloth for now. How about tools default editor PHP Storm? You guys know the drill. Talking about PHP Storm Shad. Let's say thanks to our sponsors. Everyone typing W sponsors. Okay, everyone typing W sponsors. Redberry International for making my dream come true. They are a dollar and VueJS agency. They make stuff happen.
They are absolutely awesome. Check them out. Redberry. International. Also, SER API. They basically have this API of Google. If you want to like have search results on a nice JSON format, check them out. They're absolutely awesome. They also support other providers. Check them out. Serapi.com. Also, MailTrap.io. They used to be this email solution for local development, but now they they also support production. Okay. They support production. They're absolutely awesome. Mail trap.io. Jet Brains of course one of the best if not the best editor in the world. PHP storm for PHP development at least. They now also have uh Jet Brains Air I think which I want to give it a try as well.
They're absolutely awesome. Check them out. Titan of course titan.com. They built in rescue web apps. They are absolutely awesome with Laravel React and everything in between. Check them out. They also have wrote this book Laravel up and running which is one of my best books ever in the entire planet. W sponsors, but also like Code Rabbit. Of course, they review code through pull request. They have this nice pull request format with diagrams and everything. Check them out. Code rabbit.ai. Bam. Boom. All right, Chad. So, we were here on the tooling situation. So, I want to use PHP Storm default terminal Ghostly.
Wait, does this mean that Ghostly will be used for the terminal? If the answer is yes, that would be cool. Okay. If I close this, will this use ghostly now? It won't. Well, I don't think it's using Ghostly. No, this is it too for sure. W sponsors for real. All right, Shad. Uh, we're ready to go. So, hear me out. So what we're going to do is upgrade this Laval 12 project to Lavel 13. Okay. And to do that, I'm going to simply use this boost command. Call it Lavel boost upgrade Lavl version 13. Okay.
So let's actually do this. I'm going to just type enter. And it's running as we speak. Okay, it's running as we speak. It's starting making announcement and [ __ ] like that. I'm going to just say everything yes. Okay. I kind of wish I could tweak this cloud code because I want to do it without permissions if you know what I mean. So it doesn't ask me [ __ ] Okay. So it's getting familiar with the code base as we speak. I think it only uses Xterm for internal terminals. Oh, that's [ __ ] up. It would be kind of cool if you would use uh Ghostly.
You know what I mean? But not not that bad. It's kind of okayish. Okay. The code phrase is relatively clean. Thank you. No [ __ ] Blah blah blah blah blah. Update your composer dependencies to L13. Okay. is literally doing that as we speak. It's using the settleizable classes situation. Does anyone know why we need this by the way? Oh, it's making sure my configuration files are up to date. This is actually very very nice. Very very interesting. My friend Benjamin is saying the following. You can add your own agents. So add one with claude uh with flag for dangerous.
Oh interesting. Thank you. Thank you. Thank you. Hey Maya, how you doing? Nice to see you. Sonic, what's up dude? How you doing? So we're literally running the upgrade command from laval. So far it's like making changes on the composer.json file and also making changes like on the configuration files. I think this is this working chat. I think my solo app just it's broken now. Oh no, it's making me a question. Okay. Um, yep, yep, yep. Just update dependencies for Laval 13. Yeah, you can run composer update. Yes, yes, yes, this is literally the easiest upgrade I I have ever made in Laravel.
Honestly, I kind of love AI. I'm going to be honest with you. Okay, I kind of love AI and everything AI is is giving to us if I'm honest. Okay, it's running pint making sure things are okay. It's running the test suite as well. Nice, nice, nice. Is it done? That's it. Wait. Oh, it didn't apply the attribute stuff though. Did it? Wait a second. Wait a second. Shad. Did he apply the the attribute situation? Cuz if he didn't, that's a little bit [ __ ] up. Cloud code. Let's see. They did not um migrate this stuff to attributes which I don't know if it was intended to but I'm going to just ask.
I see you are done. Why didn't you used um attributes on the models? Just ask it. No [ __ ] Push back. Yeah. Laravel sh Laravel shift is a more deterministic upgrade. This is like a bananas update if I'm honest. Like cuz um it uses AI so it can elucinate if I'm All right. I think like it's now searching for cast attributes and it will just you know making sure we have attributes in our models. All right. The only request I have to solo it's literally being able to use Ghostly right here. That's the only thing honestly cuz I feel like I can immediately see this is not my terminal immediately, you know?
That's the only thing I would I would ask. But besides that solo, it's like legit cool, I think. Can I delete this project? Yes. [ __ ] yeah. Can I add the custom agent? Add agent. Oh, can I add a custom agent? Let's see. Sidebar. Okay. I don't think I can. Can I? Does anyone know how to do that? Okay. No idea. Literally, if I add agent, that's it. It's only thing exists. Okay. And the user model now uses a hidden PHP attribute instead of hidden property. That's nice. Can you get familiar with all the new PH uh Laravel 13 stuff and make sure my project is up to date.
Check the skeleton because I also know there is V8 being used already. Okay. Benjamin is saying go to settings and agents. Okay. Settings, agents. Oh, I can edit. [ __ ] yeah. Exactly what I want. Nice. Good [ __ ] Dangerously skip permissions. Nice type mode. What is this? I don't know. Okay, so I'm going to say yes to Good stuff. Nice, nice, nice, nice. Yo, Patricio, how you doing? By the way, chat, does any of you is using solo already? Type yes, solo in the chat or w solo if you are using solo already. And honestly, what do you think about this?
Do you think it's a good stuff? What do you think in general? That was an easy migration though. So, we have some stuff here responsible for Boost B2, but the other stuff just easy peasy honestly. Nice. Good stuff. Sabrita is saying, "What is solo term? Is this a new L3 thing?" Now, it's just a basically a community terminal agentic Downloading nice, dude, we love AI 100%. Why uh Jet Brains have a separate ID for every single thing? 100%. It's just crazy. Well, they have this this new thing, which I kind of want to give it a try, which is Jet Brains Air.
I think I want to give this a try. By the way, this is like very likely to be like something really nice. And I want to give this a try. It's looking It's looking cool though. Look at this. Just say yes. No, yes, done. Is done. I'm going to download this real quick. Yes. Couple of bugs to iron out now. Okay, I feel you. I feel you. But not bad, honestly. What is this? So, oh, just two terminals. Okay, I can close them. What happens if I type command N? Nothing. Okay, command T. It's for the project.
Oh, for the terminal. Exactly. So, I can just do this. Command K just to go to processes individually or stop them or whatever. Nice. everyone literally rebuilding the same app right now. Yeah, the sh I'm gonna be honest. I don't know how much of this was vibe coded. Very likely to just be all of it. But um something you guys need to keep in mind is this space right here is very attractive for everyone, you know, cuz I feel like that is definitely a shift on the way people build applications, right? Um I I feel like every single editor will turn out to be a gentic editor and um what do I want to say about this?
I want to just say that that is literally a people understand that this kind of apps are going to be used and you know who does use a terminal right like who does use code like like this a regular editor nobody uses this anymore like I don't use this anymore like I use you know I have it open sometimes I go there but realistically I don't need a full a full editor right now you know I need a terminal I need the UI to see the div of cloud code and that's it that's the only thing I need again I need the terminal I need the UI to see the diff and that's it I don't I don't need the full IDE so so suddenly you have a need on the market and you you don't have a product yet so everyone is like jumping into this gold mine of trying to make aic editors you know um and there is so many right now it's just kind of crazy lot 13 greater I agree yeah but that's why everyone is building this kind of apps right now and we have seen so many people trying to do it you know um Marcel Posio with poly load now we see Adam with this and that is also you know Ashley with this fuel thing like we see so many people trying to build this stuff and this is just within the Laravel community if you go outside of the Lavl community I bet there is like a thousand apps like that like solo right now I wouldn't say a thousand but like any that's that does not mean that this kind of apps are just bad or or just normal they can be good you know but uh but I can also tell you that one year from now there will be apps which are much better than this because it's just you know if you go for example there is this companies like cursor and jet brains and they have like a full team of people just making apps like this.
So, it's undeniably stuff like this will just become better over time. And I want to try this out real quick. Do you guys want to try this out? It's called Jet Brains AirD Dev. I want to try this out real quick. You guys up to it? What do you guys think? So, by the way, for those using solo, did I miss anything? I'm going to be honest. Looks cool. I would use it myself, you know, kind of easy. I can restart something. I can stop it. It's looking really cool, honestly. Okay, I'm going to give you the link so you guys can try it out.
Here we go, Chad. Here we go. solotterm.com. It's looking good and it's free, so you guys can just use this. all right. I want to try Jet Brains Air real quick. Uh, let's actually just do this because I need to open the app, share my screen, blah blah blah blah blah blah. This will just take forever. So, uh, Jet Brains. Wait, what? Why do I have that? Oh, I just downloaded. Now I need to open it. Oh my god. I need to move it away. Air. Okay, I'm going to just double click it, I guess.
When you build your own ID. No, I I don't want to do that. Choose your region. Okay, my region is Europe, I guess. Okay, just going through the installation process. That was kind of easy peasy. Select the agent you want to activate. Uh cloud agent login through enthropic API billing. we cannot use our own API keys yet. I think so. So I would have to actually use entropic. Let me see. Maybe I have an account here. Oh wait, this is like enthropic API key. Never mind. It may work actually. Okay, I'm going to authorize. It's connected.
And now I can just click continue. Parallel tasks. Yes, just do it. Uh local workspace runs in a current working directive. Yes, that's what I want. Finish. I'm going to open my Lavl. Uh not Laravel. My starter kit. Uh starter kits. Nun Maduro React blah blah blah blah and I trust everything. Oh wow, that's the very first editor. Chad, I want to show you this. Okay, so I want to kind of go here and select uh air. I think chat brains. How is it called? Air. What the [ __ ] Why do I not see it? Oh, here we go.
Okay, it's looking like this. You guys cannot see [ __ ] I think, because but there is like um a place where you can select like files on the right. So, this is by the way, this is Jet Brains Air. Okay, Jet Brains Air. I repeat, chat, this is literally the new editor from Jet Brains. Okay, I'm going to send you the link. Here we go. Does any of you already tried this, by the way? I have not tried this yet, but I'm very curious to see this in action. So, this is the moment. So, I'm going to just go here.
I'm using cloth code us 4.6. I want you to have full access and I'm going to say the following. Can you check I don't know if this codebase looks updated to Laravel 13. Okay, it's thinking or marinating. What's up, Tik? How you doing? How you doing? Nice to see you. Oh, the output is actually okay. Oh, very readable. Can I tap command plus? Yes, of course I can. And just answered. All right, cool. Uh, let's see the following. Can you update my Let's see one change we can make here Oh wow. I can So the agentic coding situation is built in with the editor.
So basically have access to change files if I want to. Wow. Can I change like the theme and [ __ ] like that? I can. Custom theme dark. Oh, just one theme basically. Okay. I feel you. Well, not bad either. It's a general editor. Is it made for PHP? I think it's a general editor. So you won't get the same amount of completion that you would get with anything like that. But it's honestly very, how do I say? It just looks easy to use. Like I was just typing shift shift naturally to just move around and it just worked.
Let's type here user. Can Yeah, as you can see, you cannot import stuff. Like I'm typing user and I'm not getting any auto completion. Okay, but I can do this. Oh, nice. to import the user class. Jet brains fleet with AI. It feels like in some ways it feels like lightweight, you know, like very light basically. Hey, Canada Raz, how you doing, dude? I was sick. Honestly, I don't know if I can correlate this with streaming or anything else really, but in the last 12 months, I have been more sick than my entire life. I don't know if it's because streaming is literally physically exhausting for the throat or whatever, but on the last 12 months, I have been more sick than my entire life.
It's difficult to keep up with good stuff. You can do something if you want to, which is honestly just ignore all of all of this new stuff and just use it when you feel it's already like modernated and people are actually using it already, you know. All right, chat. What can we do from this? So, basically, we can ask I want to kind of ask for a feature. So, I'm going to say the following. Can you develop a to-do list under the dashboard where each user will have its own to-do list. I I kind of want to see how the interaction with AI works here and how UI aesthetically this looks.
Imagine VIP coding with a MacBook Neo. Dude, I am two seconds away of buying that laptop. I'm wondering how not heavy it is. You know, you have been traveling a lot, too. Yeah, traveling just kind of [ __ ] you over a little bit. That's That's true. Honestly, this is looking sexy. Wow. This is looking equally sexy. I like this honestly. What do you guys think? It looks cool. What do you guys think? It's like from your first reaction to this from 1 to 10, what do you think about this Jet Brains air situation? I would I know I kind of would I kind of I think I would use this myself.
If I would compare this with Solo, for example, I think like with Solo, we don't have this editor on the right, which is kind of handy if I'm honest. I don't think I would need an editor anyways, but kind of having both combined is kind of cool. Greetings. How you doing? MacBook Neo is just a 8 gigabytes M1 MacBook Pro. Oh, I feel you. You think a mosquito from India? Oh my god. Going smooth. Yeah, man. I feel the same. So now it's just working on stuff. I'm wondering if like what I Yeah, this is like a thing I like the I like already is that I can just come here and click on this thing and it will just open it, you know.
Now something I want to see is that if I'm able to see the diff. That's the most important thing. That's the reason why I use GitHub UI at the minute is that because I'm able to see the diff produced by AI all the time. So I kind of want to understand if Jet Brains air will give me that. It's just more focus on vibe coding. Yeah. And that's what editors will be about. Okay. I don't think you are going to see editors. The editors you see today they're going to just disappear. Well, not dis well disappearing the way they are today basically.
Oh, that that's not highlighted. Okay, that sucks. I can copy it. Nice. I can open it. Nice. Don't save. Anti-gravity shows diff. I have never used anti-gravity. Jet Brains has a built-in Git client. I never used the Jet Brains built-in Git client ever. Okay. All right. Sh. I kind of want to check this out, but then we need to check V+. Okay. So, one of the things I want to do today is check Vit Plus and see how Vit Plus can integrate on my starter kits. um you know I want to understand if feed plus is literally just an allias for existing tooling like oxlint and everything and if if it is it's fine you know but um I kind of like that this is a single API for everything.
I'm curious to see what is VP build and what is VP check and VP dev like all this stuff we're going to figure out today. Okay, hopefully on this project too. What's your take uh on MP MCP versus CLI? Uh what do you mean exactly? Oh, I think MCP is being overused. [ __ ] this is looking good. I was kind of hoping to see a uh one file change. Oh, we have one already apparently. Do we? Where is this? Oh, we did had but this is related to other changes. Not exactly the one we're working right now.
This is really slow. Oh, because it's still reading like the full context. I feel you. Yep. Yep. Yep. Yep. By the way, sh which AI model you guys are using at the minute. So, obviously I'm relying on cloud code opus 4.6 and I've told you that on the previous live stream. Uh but you know recently Laravel just released an article literally comparing all the single AI models with Laval and it is like very interesting findings and I'm kind of curious like which which models are you guys using at the minute. So apparently the push back have tested like yuku 4.5 sonet and everything like all the models people are using and he have some results.
Let's see the results at the very end. So, pretty much all of them were better with boost, but the best one with boost is GPT 5.4 actually. Very interesting. Deepseek Kimmy W push back GPT 5.4. OPUS 4.6. Interesting. Cursor Composer 2 is good. They just launched it recently. Oh, okay. I wondering how much Laravel data they have on it, you know, cuz I think like these models, they will always they will become better over time. But I wouldn't be surprised if we are going to, you know, have some PHP specific model in the future. Opus 4.6, that's what I'm using.
Yeah, LLM is not deterministic. I know one one small configuration will fail the entire evaluation. I know. Cloud for simple and quick tasks. Codex for complex tasks. Well, apparently Codex is indeed just it's the bea it's the best model with Laravel. Like it's literally the best model with Laravel. But they are close though as you guys can see. Like they are very very very close. Very very very close. By the way, don't forget go all the way down and click like on this video. Oh [ __ ] that's insanely important. Okay, let's see how air is doing.
I want to kind of just double check how things are over there. Okay, this is a diff I was talking you with you about. So if I click here Oh, I just get redirected to the file and that's it. Oh, this is the plan actually. It's still on the plan. This is so so slow. All right, I think that's it. I want to check V plus shed. Uh, so basically this is Jet Brains air. It's looking okay. It's also looking simple if I'm honest. You know, there is so many apps like this at this moment that they all look the similar like they all they all look very similar at the same time.
Um Oh, here we go. Yeah. So, how about this one? Do we see a file change for example? Yeah, this is looking okay. But again, I still prefer the GitHub UI. I don't know if you guys love this. I honestly love the GitHub UI because it gives you a full diff of the things you are about to commit. That's why for me this tool is over like honestly I don't understand why more people are not using it because it literally tells you this is what you are about to commit. You know what I mean? I love the fact that you just come here and you just have a perfect sumary of the things you are about to commit.
Yeah. Also, GitHub desktop as well. Yeah. It's it's honestly this is like how do you say I think it's overrated or whatever, you know? How do you say when something is just it's so good and people don't give it don't appreciate it enough? It's already on ide. Well, I haven't seen it yet. At least as good as this is a clean UI like this. Overrated. Yeah, maybe that. Maybe that. Yeah, underrated. Yeah, I think that's the one I was looking for. Underrated. Yes, I feel like this is underrated for sure. No other tool gives you a clean diff like this in my opinion at least.
So I won't tweet it because maybe there is like stuff that people will going to just, you know, social media crashing me or whatever. But honestly, I love this one. Okay. All right, chat. It's time to get familiar with Vid Plus. So I I'm going to just go here real quick and do the following. Let's clip permissions. Get familiar. Go online. I'm going to just say go online. Get familiar with VIT and VIT plus and tell me the exact difference between both and well for now let's just go with I was using sorcery. Dude, sorcery it's equally very good, but it's for um I think I stopped using at some point and I don't know I cannot remember why, but sorcery is equally very good.
Oh yeah, you know what? I'm going to just tweet this real quick. Do you have nightmares with sorcery? Bye. Richard is saying, "Greetings from Venezuela. I don't understand English, but I really like Laravel." Oh, man. This is a good stream to understand English. So, in case you don't know, you can go all the way down and activate the live translations, and then you will listen me in English, but have a live translation to uh your language at the same time. There is no better way of learning English than actually um then actually just listen to English, you know, really think on this agentic uh gentic era.
GitHub UI Dextop is this is the name of the tool. I don't even know. Let me just double check. GitHub desktop. Oh, okay. With uppercase H, I think. Yep, yep, yep, yep, yep. Uppercase H is underrated. Where do we see that? Oh, here we go. Underrated. literally gives you a clean full diff of the things you are about to commit. Cloth code plus GitHub desktop. Let's lowerase everything. Make it informal. Come on. Here we go. Here we go. Is the wombo combo. Here we go. Really think on this area GitHub desktop is underrated. Cleode and GitHub desktop is the wombo combo.
Here we go. Shad, here we go. For those who don't follow me on Twitter, here we go. Here we go. By the way, Chad, next month, next week, we are going to have mostly technical podcast here with us, okay? Live on stream. Okay. Adam Francis, Ian Leman, by the way, if you don't know this dude, thaylor had like a very first job doing PHP. He this guy was his boss, you know, like literally Taylor Otwell, his first job was with this dude doing PHP. So, we probably can make him some questions. That will be fun.
It's time for V plus chat. V plus. What am I doing? What am I doing? What am I doing? Here we go. Okay, we have a nice thing. Okay, let's see. The boss of the boss. Yeah, I'm very excited as well, man. It will be awesome. Oh, the translation is only available after the live stream. I didn't know about that. Did it support word tree? I don't think it does. I don't actually work trees. I honestly don't know why would I work on different features like you know at the same time. That's too much context switching for me.
I don't know how people say that they work on three features at the same time and blah blah blah blah blah and eight terminals. I work with one terminal, just one terminal only and one IDE just to make some changes if I have to. And GitHub desktop UI that's it only one thing each time. You missed the U on the gives you. Oh, really? That's fine, dude. People like mistakes these days. Mistakes are underrated. What do you think about filament is awesome and I love the filament team as well. Filament is dope. Chat, what do you guys think about filament?
Type w filament if you love filament. I love filament too. So vit is a build tool in dev server. Okay, so vit is only a build tool in a dev server. Okay, so we use VIT for building our assets for our Laravel apps and we use the dev server to have this hot reloading situation happening that happens fast toward because of this and that and we don't care. Next V+ it's the unified tool chain built by Void Zero Avenue company announced blah blah blah blah and wraps other tools in the single CLI and config. So I think this is literally an allias to oxint ox.
Oh, here we go. It's already talking about that filament is the best. I know. Are they plans to uh pass to support remote playright servers? Uh not that I know because I haven't the need but you know open an issue and we can talk about that. Reason B is saying the following. I saw cloud code for can swiping the work trees in the blah blah blah blah blah. Oh I don't I don't use that. Filament is cool. By the way, shed, I literally I literally forgot to tell you something really, really important. But you guys need to keep this a top secret situation.
Okay? So, first of all, everyone typing, I promise you this won't leave the stream. Okay? So, just do that first and then we can talk. Type I promise if you won't share what I'm about to tell you with other people, okay? Okay? because I have hot stuff here. Very, very, very, very, very hot stuff. Okay, everyone typing W promise. Come on. Come on. Otherwise, I won't show you what I have here. Promising. Promising. Promising. Okay. Okay. So, I'm working on two new features. One of them I you probably already seen on stream. Call it sluggable.
Okay. This one is very, very, very sexy. very very very sexy. Okay. So if you have an existing model, let's say a post and you want to have slugs, you just type PHP artisan make sluggable post. Okay, that will automatically generate the migration plus add this slugable attribute and then from this point you just do postreate and you have a slug. Bam. The easiest thing in the planet. Okay, this is a feature I have proposed it. So this is a pull request. Okay, Taylor didn't review it yet, but you know if Taylor likes it it will be nice to have.
Okay, so you can just do sluggable from first name and last name and you just say John Doe and then you have John Doe as a slug. Now why this is super cool is that if potentially you have collisions, this error will literally bubble up automatically. So you don't have to change a thing. You don't have to adjust the front end. You don't have to do anything. It will just do this for you. Okay. Overkill I think dude I don't know if you have implemented any slugs in your projects but endups being a lot of code like a lot a lot of code and you can replace all of that code with a single attribute with a single attribute.
How the [ __ ] that is overthinking like overkill or whatever. It's just so good. Honestly, I'm very confident that um people will love this one just because we have implemented slugs in every single Laval project we have done so far. Okay. Yep. Yep. Yep. Me too. This will be used by the starter kits already because there is stuff coming to the starter kits. But also like internally at Laravel, we are going to use this um on Laravel cloud like in pretty much every single project that uses slugs are going to use this. Okay. Yeah, adding slugs properly just takes [ __ ] forever honestly.
Okay, and there is a few things we do on this pull request that are actually very nice. One of them is that it actually generates slugs properly. So, I don't know if you guys know this, but the string slug the string slug uh method doesn't actually slugsify very well. Okay, it just does it best, but it doesn't work very well. So, here for example, we we actually slugify Chinese characters. For example, we slugify things like Russian characters. We slugify things like correctly uh things like a subdomain or a document or you know emojis even like all this stuff really just works with this solution.
Okay. Um so yeah. So this this is TLDDR of sluggables. There is other thing I'm working and this one is actually [ __ ] super sexy. Okay. This one is [ __ ] super sexy. This is what I'm working on right now and this is what I'm working on during this next day or two which is firstparty support for images processing. Okay, now let me show you this is the [ __ ] this is like the most sexiest thing in the planet. So I don't know many of you have worked with images. Oh, by the way, if you want to just check the slug situation, let me send you the pull request.
Here we go. Here we go. Here we go. Here we go. This is the pull request for slugs. You know, you are free to just comment the pull request, do whatever. Check them out. Let me know what you think on the pull request if you need this. Now, this is what I'm working on right now. In this one, I'm like a thousand% confident that people are going to absolutely love this. Okay, so the way it works is very simple. In the past, if you would have like a file upload, it will be a nightmare. You would receive like a file upload um of an avatar.
you would accept like four megabytes. People will start complaining and you would upgrade that to 8 megabytes and then suddenly um you can no longer accept those images because they are just too big and you res reduce again and it's just a nightmare in terms of UX. Now what am I doing is that you can go to request equal image and you have this fluent API where you can do things like calling optimize. Okay. And this optimized method is just the best thing in the planet because it will move the your your full 8 megabytes picture to something like 66 kilobytes.
Okay. And this happens because of a technology which you guys know call it webp. You guys familiar with this thing? WEBP is just you know it's actually PNG and JTAP done right. It's a format for the web for images that is really like optimized and everything. So we'll just do that. Okay. Now obviously you can do a bunch of stuff. You can optimize and still keep the same format. You can cover it. You can scale it. You can orient it. You can blur it. Like there's a bunch of APIs like this. But this is like the real world situation happening right here.
Okay. You are receiving a full 8 megabytes picture and you want to just basically use it for an avatar so you can cover it and optimize it and really just works. You can also like scale something to a reasonable size. Sometimes you receive like a 4K picture for something really simple. So you can scale it a little bit and orient it if you want to which is works really nice. Now all this stuff works with three drivers. The very first two you probably know GD and imagic. Uh okay GD and imagic. You probably have used it right?
You guys have used this stuff in the past like image GD and stuff like that. If yes just type something like yes no no whatever because you know this stuff is kind of it's good stuff but the API sucks. That's the only thing. But also like we're also introducing a Cloudflare driver meaning that uh if you want to have like really really good image optimizations you can just rely on Cloudflare that it's the same API so everything just works. Uh what else? And yep that's it you know kind of really cool stuff in my opinion.
What do you guys think? Yes for both. Thank you. This is the second pull request chat. Okay second pull request. Feel free to just, you know, let me know what you think on a poll request. I think this is really cool stuff. I'm very excited and you guys told me keep it for you. Okay, don't don't go to Twitter to talk about this stuff. Okay, let the Twitter gods save the the tweet for Laravel. So Laravel can tweet about this stuff, not me. Yeah, I I kind of like this pull request more than I like the sluggables because I feel like file uploads every every single app have file uploads.
He never used Cloudflare. So let me just show you um let me just show today we are switching between contexts like all the time but let me just show you. So I'm going to go here into this Cloudflare driver and let me let me just show you. So for the GD and imagic I'm relying on this library called intervention behind the scenes. Okay, so really just works. I'm just proxying a little bit all of the options you guys gave me to the image uh to the intervention driver. Okay, this really just works. Now Cloudflare is a little bit different.
It's literally an HTTP request. So you upload an image, we go to Cloudflare, we send that image, and Cloudflare will optimize the image, but like the service is just much better than this homemade like server solutions, let's call it that way. This guy is actually got a plus one subscriber tweet gods. Yeah. Yeah. Yeah. So yeah, this is literally using um What is this? Why do we have a a Okay, I don't know. But this is literally doing a um an HTTP query to a Cloudflare API to literally just upload an image and then transform the image and get it back.
So this is literally like um an API call to Cloudflare, but you can do everything else. You can scale, you can blurry, you can, you know, you can format it, you can change the quality. So all of that still works. By the way, chat, if you enjoy this these two pull requests, something really important you can do to support my work. Oh, lag. Come on, man. I'm just so [ __ ] sad. Really? How much lag do we have, Shad? How much lag do we have? It's back. No lag. Video good? Video good? Audio good? Let me know.
Let me know, Shad. Everyone typing stream good. Stream no good. Huh? We back. Just hit the refresh, chat. Hit the refresh. W video. Nice, nice, nice. We back. We back. Nice, nice, nice. By the way, chat, if you enjoy this tull request, something you guys can do to support my work is go all the way down. There is literally a like button. Just click on that like button and that's it. Boo. Okay, so this is the pull request I'm working on. Okay, will give you a very fluent API like you just go to the request layer, you type image and you get it.
You go to the stringable, you can have a string to image as well. And there's a few other things I'm doing at the minute. Okay, good stuff. I think like button on the pull request. Well, you can put like button on the you can put like on this video, but also on the pull request if you want. Okay, here we go. This is the pull request. like the pull request if you want to see it. Zero lag on Twitch. That's because it's Twitch, dude. Twitch is badass. Okay, so this is what I'm working on. Back to the V plus situation.
Okay, we need to check that out today. Okay, so apparently in the past if you wanted like JavaScript testing, we had to install a separate vit uh thing. Now it's just built in with V+ including linting and FMT. Okay. Okay. So, let's just do the following. Go to this project and fully replace um wait, do we have a skill though? That would be kind of cool to have a skill. Vit plus skill. wait, didn't Verscel have this skill situation we could use potentially? Oh, here we go. Asian skills. How do we search for skills though?
Oh [ __ ] Does anyone know how to search for skills? That was like a Versel thing where you can just, you know, kind of go to a skill situation. Skills.sh. Thank you. Can give me one idea why the image pull request is better than the spicy package? I have not checked the spy package. We build our own sluggable style system. Oh, for slugs I am very confident that my solution is better than the spicy one. Yes. Just because I have a bunch of experience with slugs, man. And uh you know I have and I've actually asked cloud code like give me a side of side comparison in terms of implementation and cloud code told me like my implementation is legit good.
Um okay. So we are on skills. Do we have a V plus? This is what I want to search. Uh uh uh uh uh. It's searching but not doing anything. I think this is bugged. Oh, here we go. Okay, there is no V+ skill. Oh, here is one V plus skill here. Okay. Should we use this real quick? Yeah, let's actually use this. So, let's just type this npx skills ad. By the way, if you don't know what are skills, it's basically a way of instructing Cloud Code how to work with something. So, I'm going to quit this.
I'm going to type npx skills adv plus. I'm going to say yes. So it's cloning the thing. Uh additional agents. Oh cloud code I think. Huh the [ __ ] Okay. Uh yes. All right. So now we can go back and I'm going to just say, oh, I'm going to just type d- continue so we can continue on the previous session. Here we go. Um, can you do me a favor? Wait, let me just check if I'm on the current session. I'm going to type d-res question thing. I was not. This is the one. Okay. So, can you migrate this Laravel 13 project to VIT plus um fully migrated, please do it right, check the skill, etc.
So, I'm going to change to plan mode so it basically don't doesn't do [ __ ] It will basically propose me like the solution. Oh, by the way, V+ is on alpha mode, not stable, but I guess we are going to do it anyway. Does he use my tokens if I use add skill? What do you mean my tokens? There is an official migration prompt uh on the V plus docs. Oh, really? Something a little bit lame though is that I type V plus docs and I still get like V do Oh, here we go. Never mind.
So, guide migrate to V plus. Oh, VP migrate. Oh my god. I wonder if this works though. That's the real question. Oh, there is a prompt. I'm going to give the prompt at the very end. Hey, thank you Julian Center. That really helps, man. Hey, thanks Kria. That really helps. Thank you. Thank you. Yep. Migration prompt. Yep, yep, yep. I'm going to wait for the plan, but then like I'm going to just say, "Oh, I just found this migration prompt. Can you make sure like everything is just perfect and blah blah blah." So, we should be good.
Bada boom, bada boom, bada boom, chat. We have about 100 people watching the live stream. You guys are so awesome, by the way. Okay, you guys are just so awesome. I really appreciate you being on that side. If you enjoying today's live stream, go all the way down, subscribe to the channel. Insanely important. So we're currently migrating a VIT project to a Vit plus project. And keep in mind that this is a Lavl project. So you know it's not exactly a VIT one, but yeah. So the project uses preier. Yeah, we don't want preier anymore for classes and you know OX FMT doesn't have that.
Yeah, I'm going to drop preure entirely to just opt in RX FMT. So, no more um no more preier on this project. How many tokens is burning? I have literally no idea. I'm going all in, dude. You know, I'm going all in. Okay, so now I'm going to just say the following. I'm going to go all the way down and I'm going to say uh note I have just found this prompt uh recommended by the V+ team. Can you check you didn't miss anything? And now I'm going to just copy paste the thing. Bam. So it will run this prompt against the existing plan and it will let me know what she thinks.
Did you work out today or you felt too sick? I worked out today. Yeah, I felt just good, you know. So, Monday I wake up a little bit already like off off rails and I did a stream and then Monday night I had a very bad night of sleep. You know, my throat was [ __ ] up. I wake up in the morning, it was very [ __ ] up and then I went to just um you know, take some medicine and Wednesday I was still under the weather but now just feeling good. Okay, I don't know how much he changed, but let's just review a little bit this stuff.
Okay, step one, step zero actually, confirm Vit Plus is installed. Currently, 8.0.1 is good. No V test on this project. No GS tests. So, we don't care about Vest. Uh, blah blah blah blah blah. Okay, step one, run VP migrate, no interactive. So, this will just migrate the configuration files and everything. Step two, verify automatic rewrites. Confirm V imports were rewritten. Okay. Okay. Okay. Okay. No stall vit or v test deps remaining. Yep. Yep. Yep. Step three, metal cleanup post migration. So we'll basically just go to uh every place we mentioned preier and we'll replace it with oxint.
Uh we'll move oxlint rxc to the vit configuration file. So we don't have an extra file. We'll move preterc. Oh, I don't think we need this but let's see how it goes. And remove the old files. Okay. Step four. uh update the npm scripts on a package.json file. So this is very important. So basically composer test still works. So basically migrating from u all the old scripts to these new ones. Step five verify the migration which will run VP install VP check VP build VP build- SSR for inertia server side rendering uh files to modify blah blah blah blah files to delete blah blah blah blah key risks the lafl v plug-in compatibility.
This is actually a very good point. This is actually a very good point, chat. We don't know if it's working. A lot of el bit plugin. Let's go here real quick. Do we have any issue? Oop. Not that I can not that I can see. Okay. Nobody's complaining. So, it may just work. It may just work. Chat. Uh. All right. Shad. I'm going to not clear the context. I'm going to give you a tip. Okay. I'm going to Oh, it's lagged. Chat, is the stream okay? Let me know. Write on the comments if the stream is good.
Chat love CC. What do you mean? Cloth code. Oh, me too. We back chat, right? Scream is good. Okay. Nice, nice, nice. So, I'm going to give you a small tip. Every single time you plan something with cloth code and the context used is not a lot just you know just don't clear the context. There is really no reasons to clear the context and you can just bypass permissions and you just go all in. Okay. So we are going to do this. Uh very good thing here is that we have a bunch of browser testing meaning that once we migrate to vit plus we can actually run the the browser testing suite and we also have like regular test so we can just run the full story.
Oh there is a v plus cli first which is which is installed apparently. Nice. I want to check it out. I just type vab- version. Nice. Good [ __ ] Can I type d-help? I can, of course. And I have just a bunch of stuff. Nice. Are you on Mac? Yes, I am. Do you also use codeex? I just use cloth code. Yes. Yes. It's just cloud code By the way, sh I hope you guys are enjoying today's live stream. Uh we are live today on Twitch, on YouTube, on kick, on Twitter, pretty much everything. In case you guys don't know why Mac mech because mech is just the best, dude.
Mac is just the best. I think I think like Mac is just so stable, you know, that I I don't I don't want to try anything else. Chad, I was about to say that I'm also on Instagram. If you guys are on Instagram, give me a follow over there. Okay, a bunch of Instagram situations happening on my Instagram. All right, just running all the stuff. Let's see the end result, which is the one I really care. Oh boy. Oh boy. VP check is failing. Both build in excellent were set. Okay. Formatting issues found. Okay. You two used on Windows.
I promise you you try MacBook. after like being with Mac for like a week, you don't want anything else. That's just my opinion, you know, and I've been a Linux user. I have been an Arch Ubuntu, like everything you can ever imagine on the Linux space. I have been, you know, Windows user in the past. And once you go to MacBook is just over, dude. You know, like MacBook is just so good in terms of stability. Everything just works. Yeah, it just works very well. Exactly. This is cloud cloud code opus uh for Windows is the worst even though Windows is becoming better now.
Honestly, I miss Windows XP. Do you guys remember? Oh my god. You guys remember Windows XP? That was so good, man. Oh my god. Windows XP was probably the the the best Windows in the planet. Do you guys remember this [ __ ] Oh my god, it was so good. This was so good. You guys remember this? Come on. I cannot be the only one. This was This was like the best experience ever just to play video games and [ __ ] It was so good. XP, man. Oh yeah, baby. Oh my, they are so good. Mac is too expensive now.
It's so cheap though with that green land landscape. Exactly. I would still use this honestly. XP was so good in lightweight even for gaming. Vista, no way. Vista was ass, dude. Honestly, Windows Vista was so bad. I remember like going from Windows XP to Windows Vista. All my laptop was so slow, you know. Yeah. Oh, yeah. Just just so I I was also a big Windows 98 user. So, my migrations were Windows 95, Windows 98, and then I jumped directly from Windows 98 to Windows XP. And then from Windows XP, I only migrated when the thing was over because at some point they said, "All right, we are going to deprecate Windows XP and games won't work anymore and [ __ ] So I had to go Windows 7 and then after Windows 7, I went to Mac OS." And from that point, it was just, you know, Mac OS forever.
Vista was [ __ ] Yeah, there we go. Nobody likes Vista. I think the problem, honestly, Cloud Code development and XP must be so good. Oh, we need to tweet that [ __ ] dude. Oh my god. 100%. Peak productivity Windows XP with cloud code. Must be so good. Why don't you leave recordings of my streams? Dude, you are not paying attention. Literally go to my YouTube channel. It's just go to the live section. Here we go. Like all the live streams. Every every single live stream I've ever done, it's like literally right here. Every single one of them.
Okay. You just go to slashstreams. I wonder. I wonder why I cannot type the [ __ ] E. Here we go. Oh my god. Huh? I want to lowerase it. Come on. I cannot like [ __ ] type a lowerase high. This is so ridiculous. Okay, here we go. I wonder how could how productive I would be just using cloud code with Windows XP. Even live on stage, this guy is funny. Are you too nice, dude? This is like the wombo combo. Honestly, I wonder how productive I I would be. Oh my god. There we go. Just using cloud code.
We need an XP. We need um a yummy emoji. Here we go. No, not this one. Like the the yummy one. What is the yummy one? Uh this one. Here we go. Such a good joke. Thank you. Thank you. You want to start a VM right now doing that? Oh my god. All right, I think this is done, chat. 7 minutes migrating from VIT to um um from Vit from Vit Plus. All right, let's let's actually test this. So if I run npm uh bun red dev check dev uh check actually script not found. What do you mean?
Oh we don't have check. Oh it's test types. Never mind. Test types. So that work. So that's running TypeScript though. Okay. So if I type test linked, it's not working. Nope. It's not working. This is literally failing cloud code. I don't know what the [ __ ] are you doing, but this is literally failing. Uh uh uh. This is literally failing. Windows XP. I was just thinking like do you guys remember like the Windows Vista Cuz the Windows Vista was even like in terms of transparencies. So this was the problem chat. Honestly, Windows Vista was pro the problem with Windows Vista is that it was just ahead of its time, you know, because back in the days, all of us had like this specific amount of RAM, memory, RAM, this very specific graphic with this specific amount uh RAM associated to it.
And Vista came with transparencies and [ __ ] like that, which made every single laptop using Windows Vista super slow. You know, that was the issue. AA Vista, baby. Oh, for sure there was a problem with Windows Vista and I think they kind of fixed that with Windows 7 because Windows 7 I think it had zero transparencies I think. Oh no, it had a bunch but it was just more optimized apparently. It was just much more optimized. Oh, the the V plus situation is still under is still uh we're still working on it. It was failing for some reason.
Oh, it was missing some commands here. All right. Oh, okay. Let's try it again. Okay. Bunrev bun formatting could not start. Fail to load configuration. Dude, I'm going to just say just run this command yourself until it's fixed. Run this command yourself until it is fixed. Windows Vista is as flaw design as software goes. Yeah, it was not good for it was not good when it went out. It was not good. So VP check works but Huh. Do I need to run VP through? Oh, maybe I don't want I don't need to run VP through bun.
That's the issue. Oh, wait. I don't need to run VP through bun. I think that's the issue because I was running bun run or whatever, which is clearly failing. It's not a bun issue. It's a local VP binary. Oh, it cannot parse uh TypeScript configurations. Okay. So I'm going to say that I'm going to say the following. In that case, remove the scripts on package.json and add them directly to the composer.json file. So what I'm doing chat just to give you the perspective is that on my composer.json file, I obviously have a bunch of scripts.
Okay. So one of them are running linting for example which I'm running pint I'm running recctor but then I was just saying bun run whatever JavaScript linting you need to run okay so what cloud code will do is that it will come here and use vit plus directly okay bun is the future well apparently I cannot even use it with combined with vit plus so you got it running with bun that's interesting Okay. All done. So apparently we have migrated literally everything to V+. So we are running V+ through the binary directly. Yep. So um vit VB check-in.
So this will run I assume this will run ox fmt plus ox linked. Let me just confirm that with cloth code. Uh uh uh. Oh my god, we have so much stuff open. Uh this goes here. This goes here. Is this Yep. I'm going to just confirm if VP check-fix is the same as Exactly. It…
Transcript truncated. Watch the full video for the complete content.
More from nunomaduro
Get daily recaps from
nunomaduro
AI-powered summaries delivered to your inbox. Save hours every week while staying fully informed.









