Laraval is a really mature framework. It is also crazy stable. But the best feature has to be their documentation. It is probably the best documentation I have ever read.
Yes the documentation is really good, but still could be improved. There are often methods or concepts that are not explained and only will be found if you read the API docs or you find out about it through an article. But im aware that there is no perfect documentation.
What people don't realize is the power of its execution model. The entire web community reinvents the entire wheel to come to where PHP actually began. React mixes HTML and JS, PHP did that from the get go. Serverless with shared nothing architecture? Well, Every PHP request is shared nothing, it goes even to the extent of not reusing framework objects. It's like it was built from day 1 for AWS lambda. Cold start too slow with your backend? PHP does cold start for every request, parses and executes at the same speed as a hot loaded app. Don't want to update your libraries every two weeks? With PHP, you can upgrade languages, frameworks and PHP versions everyday and the code is rewritten for you using PHP rector. But generally the libraries in PHP are very mature so it is rare to see breaking changes when compared to JS. Hot reloading? PHP had that since 2000s (it doesn't have HMR but most HMRs are useless after a certain point of complexity) It made a lot of mistakes at the language level and is constantly improving it at a fast pace, but it has got the architecture right from day 1 because it was built to solve the problem of web development and is not a language looking for a problem to solve. For the people hating on PHP, people in the PHP community are nice folks, they put their heads down, work on their projects, build their business, make good money and go home. For them, it is just another well sharpened tool that does exactly what it was built for, so they likely won't fight back nor come back at you with memes. Use PHP If you want to build a business and do it quick, if you want to have fun, we have other hundreds of languages to choose from.
With OPCache enabled within PHP (should be by default in v8+) there's no such thing as cold start any more. Basically PHP "compiles" files to bytecode after first run. You can also make it to never invalidate that cache (useful for prod) and you just increased the speed of your app for free basically. Then there's also the JIT compiler but I'm still trying to find usecases for it that actually benefit though.
If you want to avoid the cold start latency, you also can use Swoole. It's a game changer, and Laravel ships it with Laravel Octane. One artisan command and voilà. Pretty amazing.
php is indeed nice and i love it but web community isn't reinventing the wheel. the problem is that browsers don't run php, they do run js so technologies like next.js have the future because they can provide things that php can't, and such things are literally amazing. i've never been hating on php people (probably because i'm a python dev so they'd easily fight me back😂). i think everything has pros and cons in the tech world so knowing multiple things would allow you to make better choices depending on the purpose of your business. hating on others suck
13:45 {{ __('Dashboard') }} was for multi-lingual support. Laravel has a built in helper function ` __() ` that helps with multi-lingual functionality. And the curly braces are blade templating syntax {{ }}. So in this scenario if the user uses a different language than English the "Dashboard" text will change to that language given that it is defined in that language. The lang directory handles all the language translations files.
13:14 you can do the live reload if you download only breeze without vue and anything it will do the same what you are seeing and when you do php artisan server and then do npm run it will work like when u do some change in file it will show up instantly without the reload so nothing different
Nice! You might already know this by now, but you can get live-reloading by running `npm run dev` instead of `npm run build`. That comes with the Vite setup in Larave.
There is an existing hot reload for Laravel in development mode. 1) Open up a new terminal and run 'php artisan serve.' 2) Open another terminal and run "npm run dev" Provided that you installed either Jetstream or Breeze, the hot reload comes out of the box.
For anyone finding this is a year later, Laravel has now introduced 'composer run dev' as a command that runs all commands such as 'php artisan serve', 'php artisan queue:listen', 'php artisan pail' and 'npm run dev' all concurrently inside 1 terminal.
I came here to say Lavavel is a collective work and not only Taylor's, but then I looked at the contributions graph and I was like, "Hey, the man well deserved his Lambo!"
It’s not that writing JavaScript without a meta framework is scary, it’s a pain. When you’ve written thing.addEventListener 10 times in a file, you start to wonder why you didn’t just use react to begin with.
you can use js with those, rails and laravel can use react or svelte or anything really, because it's sever rendering and you can server render data for first render and even plug-in hydration
I can't wait for him to realize he can create almost all the boiler templates such as Models Controllers, Factories ,Seeders ,Resources etc which just an artisan command and the other goodies that Laravel comes with
it's surprisingly good to hear you talk and discover your way through php and laravel (this is my first video), you don't go unconfortably too crazy on stuff, you sound mature, chill and fun. What an enjoyable experience, keep it up!
I love Laravel and have been using it for years! It's a stable and battle tested framework with a LOT of stuff out of the box, and the stuff they have included are well thought out and implemented in a away so it makes it easy to work with. The framework is using the MVC model (Model (database table representation), View and Controller (business logic, CRUD = Create, Read, Update, Delete, etc). It's a GREAT framework. The {{ __('Word') }} is for localization purposes. Edit: {{}} are Laravel's standard syntax for bringing out variables from the controller. The __() is the localization part. Just for clarity. Makes it easy to translate using simple translation files.
I know this video is 1 year ago, but cool little tip: If you run "npm run dev" alongside of your "php artisan serve", you actually do get HMR, which includes edits to your blade files, livewire components, and more.
I'm happy to see new people looking at laravl, for what it is it's been looked over far too much. Laravel is amazing, and I also remember just enjoying my life back when I was working with Laravel.
Laravel put out a NextJS starter project and it's an absolute dream. Pair that with Laravel Octane for the backend and you have a modern framework that competes with basically anything (like ~8ms response times)
Regarding the one man band comment - it’s not just Taylor who works on Laravel now, there’s a pretty amazing core team. Loved the video, been waiting for this 😅 Glad Laravel is starting to get the recognition it deserves!
What I love most about laravel: 1. Queues out of the box especially async queues, so easy to setup. 2. Migrations and seeders. 3. Great routing and very easy to implement Middleware on routes and controllers. 4. Easy to capture and store Logs.
Would definitely like to see a more in-depth go at Laravel from your perspective. I've used Laravel from the beginning and can't speak highly enough about it. It's a shame that developers can be so divisive about what stack they use, but honestly if you just dive in you find Laravel has taken the best aspects of application development and made building apps fun and exciting.
Awesome video highligting the features and whats possible, as a junior dev i've been seeing PHP everywhere but haven't stopped learning the MERN stack. This video is going to change that. Laravel looks convenient to use im going to have to learn the basics and try it out on a project
Lol... cool video. Loved it. 13:52 {{ }} is like {} in React. __() is a helper function used for localization and translation. 'Dashboard' is just a string.
Laravel = happy. Great video adam 🚀 If anyone's looking for more Laravel or PHP videos, we released task scheduling and Monolog tutorials to help the community too 💪
Been using Laravel for years now. It has fantastic documentation and ecosystem indeed. I just have a love/hate relationship with one of its core concepts which is the facade (not much relation w/ facade pattern). It does a lot of magic through this "facade" and as you learn more about web development, you will prefer visibility over abstraction. It's specially difficult for beginners to find what those magical string arguments are (like "auth:sanctum") and how to modify them. As with any abstraction there's a price to pay when said abstraction can't accommodate your specific implementation needs.
"accommodate your specific implementation needs" comes with experience tbh you can go full OOP mode and leave facades to just packages or default stuff
This video made my day. I laughed through out the video. " Our (js) templates are just a bunch of files and a logo spinning". "The guy who this is probably driving a Lambo 😂". Js community has a million tools doing the same thing. Oh i almost forgot this one 😂, i was expecting a reload too and that point you mentioned, " using next js or react makes us scared of using JavaScript... "😂
Since you're so used to Next, I would LOVE to see you tinker around with Livewire! It brings a similar way of interacting with your backend, in the same way that RSCs do :D
You can make Tailwind classes autoreload the page when you update them. I'm kinda happy that someone with your extensive knowledge in other lang and stack tries my beloved Laravel
I used nextjs a lot for work and personal projects, and now I'm building a new project for a client and decided to go with Laravel because of how stable and mature the framework is and how much functionality you get out of the box. It also works great with any front-end framework.
How do you guys change frameworks in such small time ? I am learning frontend and backend and is requiring atleast 6 months . You people be like. I will use laravel for it ? Is it that easy ?
@@bibekkoirala352 laravel is just really great bro, let's say you learn frontend only html, css, and simple js library. and the backend u learn php oop. u will create something big on laravel faster than full js stack, especially on common feature.
@@bibekkoirala352 i’m the same way, I think it’s easy, if you were just building nonsense from scratch, but if you dive into something that is already built in a framework, it takes a long time to sort out the functionality. That’s where I am with laravel. Really struggling to follow. What is going on when I need to make simple changes to a front end component only require minor JavaScript, and tailwind modifications. I think Laravel is too bloated. I prefer react and next JS.
Ah I think I needed to see this video. I started out with Laravel about 10 years ago and at some point decided to go all in on JS with Next.js. This reminds me of how simple my life used to be and how much money I was still able to make. I really hope PHP and Laravel sees a resurgence in popularity. It really deserves it. The devs that I work with see PHP as a baby language and look down on those that use it, this needs to change because it’s so much more mature now.
Just wanted to say, In your Blade component, __("Dashboard") is a function used for language localization or translation. It is a shorthand for the __() helper function in Laravel's Blade templating engine. The string you surround with __("text") can be translated easily
Lots of great comments here. I miss my Laravel days for these reasons. Another big thing that was glossed over are the error/context modals. Crazy amounts of detail, helpful info, and tools to plug into like Telescope.
I just started with Laravel a few weeks ago. Very impressive and I've always been able to make things work (Docker "Sail", github CD, building an API). Fun to watch you click around in all those folders/files as I did as well. So far happy to have started down the Laravel road. ❤
php is server base, so you will not have live reload, but cntrl F5, initiates a call to the server, which will then process, and send to the client instructions....(for creating the html, etc. in the DOM), and javascript will run after the DOM load.
I've been developing in PHP for 11 years now. Always worked for very small companies so my own opinions on using a framework were never challenged. I thought that using a framework would be severely limiting. About 5 years ago, a dev came on board singing the praises of Laravel. He was right and I haven't looked back.
Inertia can be used even without Laravel and it enables you to pass array of key => value pairs from your backend code to a frontend Vue (or React) component that then receives those named array keys as properties set to values that you've given to those properties in your backend code. It's literally a glue between frontend and backend so your app can be more backend heavy and frontend is just made up of components that receive data they need from your backend controller that renders them. Also, routing is done on the backend side, not in Vue or similar
People should be encouraged to use Symfony. Not Laravel with all its design flaws, heavy use of static proxies and other violations of good software design practices
in the olden days I used to make tons of personal/corporate websites with custom back-ends using readily available CMS like joomla, drupal or wordpress. Half my working time was making new websites, the other half was fixing the bloody mess created by script kiddies and all sorts of hackers. Laravel (version 4 I believe it was) changed that routine for good. It also made me realise that PHP does NOT suck. At all. I was the one who sucked, as a developer. Taylor's (yes, he single handed created the foundations of Laravel) famous attention to detail is not just the comments. Just open the Laravel vendor folder and look at the code. Look at it. LOOK AT IT. Laravel is the web developer's word for love.
@@pashabolokhov are you seriously expecting me to browse over almost 300 comments to find yours and read your opinion about a programming language which is used in the vast majority of the whole freaking internet? Yeah, let me think about that for a moment...
Wow this is hot stuff! I moved from JS only to Laravel because its structured, robust, insanely fast and iam so much more productive then building it with JS only (takes insane amount of time compared), also the hosting is much cheapter then JS, more simple with Laravel and it will do all the auth/api whatever out of the box. And you can build whatever. I will follow your journey!
I *really* enjoyed watching this. Thank you. (I've been doing PHP since it appeared, even built my first CMS with its predecessor, Apache SSI ("server side includes").) Gonna go see if you've posted any follow ups now ;)
Nicely done, I'm by no means a lover of PHP but it is exciting to see Laravel being in the spotlight. The fact that you went from deps to db to functional dashboard in ~2 minutes. ++ I'm looking forward to seeing you do more PHP things.
I’d be curious what the update/upgrade experience is. I wonder if there’s an old release you could start from and upgrade to the latest stable (potential video idea)? I have no idea what that experience should be with Laravel, but past experience with frameworks like it has taught me that upgrades should be miserable 🤣
@@cloudnull I've taken one project from v6, v7, v8, v9, to v10 and it's been pretty easy each time! There's a service Laravel Shift that does most of the lifting for you but even doing it manually isn't bad. Tons of great improvements come out in minor releases as well.
I get not liking legacy PHP, but version 8 and up is a totally different ballgame. There's stuff there that makes even razor-edge TypeScript devs jealous.
livewire = 2way data binding with the server like in vueJS because i feel it was inspired by it more than other frontend frameworks inertiaJS = you basically make a monolith app with be it client/ssr (based on what you need, if you dont have public pages just dont install ssr, tbh even if you dont have SSR i got over 95% scores for SEO), you use your logic on the backend for full data/partial/on demand data load that you just pass to the frontend framework and it just works TBH I have been using laravel for 6 years, growing with it, it tought me lots of good concepts and i preffer to keep JS just for frontend stuff, backend world doesn't need to be reinvented Now if you need deep file manipulation on the backend like images, videos, lots of imports, yeah you might need to do asynchronous stuff using queues that are built in. As a final notes i kinda hate the HYPE-train in the JavaScript world, like all tech trends it mostly MARKETING
Great video Adam, it was very refreshing to see you give an honest take on Laravel vs. the typical PHP shit post that every content creator makes for some cheap clicks. Its an excellent framework that just simply works and is overfilled with quality of life workflows.
Inertia abstracts away communication between FE & BE, it's like having a React template, you don't have to worry about doing API calls manually, you build your React/Vue page and inertia takes care of preloading data from the server when the page is rendered and then all updates are done async via special json format. The FE component just takes in the props and renders.
Laravel and PHP more generally is not the PHP it used to be, and is no longer deserving of the bad wrap. I dove into JS and its ecosystem 6 months ago, and couldn't believe how convoluted it is. Laravel comes into its own with testing too - it is so. Damn. Easy. Welcome to the dark side ;)
Need more videos from you on this - perhaps try building something as simple as CRUD with Laravel Livewire! It's basically everything you love about JS but in PHP.
i dont know why people hate on php/laravel I have started my life with javascript php, and chose laravel and its AMAZING you really enjoy and have fun writing laravel code
That _ _dashboard is an thing for universal translation syntax. So imagine you have site in ENG, DE, PL etc.. and depend of the locale of the user it will switch the language displayed. Btw.. @adamdotdev did you converted to laravel religion yet ?
What You was run into at 13:31 {{ __('Dashboard') }} is nothing more then a Laravel helper function for translation of a string. You are able to set the application language for other than english, and when you do that this helper function will translate it for you to the chosen language. The {{ }} means, that you want to run PHP code in the HTML code, so this all together means: you run the Laravel frameworks __() helper function for possible translation of an english written string. You can read more about helper functions in Laravel documentation or get a deeper understanding of it by watching the 'PHP for beginners' series at th-cam.com/video/U2lQWR6uIuo/w-d-xo.html. (I saw later on that someone already did this answer, but I leave it so, maybe there is a bit more information in this remark.)
Inertia allows you build your frontend as SFC and have it run like an SPA, but using Laravel's routing and server side logic. It's just an adapter linking both sides of the stack.
I like Laravel and we use it at work but I find things like simple Queues, Auth, Email is way over abstracted and creates problems and headaches when having to maintain or add new customization's. I would prefer a Laravel build with just the ORM and router.
Not sure... ORM's aren't my piece of cake either and routing is easily done at the http server layer, too.... What remains? That's probably why I don't use it 😅
@@LukePighetti From my view, Laravel abstracts alot away from the developer and uses different libraries and plugins for different feature. It tells you what to do instead of explaining how things should be done in a sense. This is not really my cup of tea. So like for auth using Oauth 2.0, you would have to install a library or plugin to handle it and just follow the instructions to set it up but if something fails, it can be difficult to trouble shoot since you really didn't get to appreciate how it actually works.
Laraval is a really mature framework. It is also crazy stable. But the best feature has to be their documentation. It is probably the best documentation I have ever read.
Absolutely the best documentation, and its extremely clear and easy to follow.
without a doubt it is the best documentation i have come across
ya , the best documentation , for beginer and senior
Yes the documentation is really good, but still could be improved.
There are often methods or concepts that are not explained and only will be found if you read the API docs or you find out about it through an article.
But im aware that there is no perfect documentation.
@@TheVertical92i think they try not to overcomplicate it
What people don't realize is the power of its execution model. The entire web community reinvents the entire wheel to come to where PHP actually began.
React mixes HTML and JS, PHP did that from the get go.
Serverless with shared nothing architecture? Well, Every PHP request is shared nothing, it goes even to the extent of not reusing framework objects. It's like it was built from day 1 for AWS lambda.
Cold start too slow with your backend? PHP does cold start for every request, parses and executes at the same speed as a hot loaded app.
Don't want to update your libraries every two weeks? With PHP, you can upgrade languages, frameworks and PHP versions everyday and the code is rewritten for you using PHP rector. But generally the libraries in PHP are very mature so it is rare to see breaking changes when compared to JS.
Hot reloading? PHP had that since 2000s (it doesn't have HMR but most HMRs are useless after a certain point of complexity)
It made a lot of mistakes at the language level and is constantly improving it at a fast pace, but it has got the architecture right from day 1 because it was built to solve the problem of web development and is not a language looking for a problem to solve.
For the people hating on PHP, people in the PHP community are nice folks, they put their heads down, work on their projects, build their business, make good money and go home. For them, it is just another well sharpened tool that does exactly what it was built for, so they likely won't fight back nor come back at you with memes. Use PHP If you want to build a business and do it quick, if you want to have fun, we have other hundreds of languages to choose from.
Exactly this, so well and Eloquently put 😂 🙇♂️
With OPCache enabled within PHP (should be by default in v8+) there's no such thing as cold start any more. Basically PHP "compiles" files to bytecode after first run. You can also make it to never invalidate that cache (useful for prod) and you just increased the speed of your app for free basically. Then there's also the JIT compiler but I'm still trying to find usecases for it that actually benefit though.
@@DavidThorpe PHP makes web development a Breeze
If you want to avoid the cold start latency, you also can use Swoole. It's a game changer, and Laravel ships it with Laravel Octane. One artisan command and voilà. Pretty amazing.
php is indeed nice and i love it but web community isn't reinventing the wheel. the problem is that browsers don't run php, they do run js so technologies like next.js have the future because they can provide things that php can't, and such things are literally amazing. i've never been hating on php people (probably because i'm a python dev so they'd easily fight me back😂). i think everything has pros and cons in the tech world so knowing multiple things would allow you to make better choices depending on the purpose of your business. hating on others suck
As a Laravel developer I find really entertaining seeing someone going through the first steps, as I wanted you to like it :D
Welcome to the php/laravel community! We're glad to have you!
13:45
{{ __('Dashboard') }} was for multi-lingual support. Laravel has a built in helper function ` __() ` that helps with multi-lingual functionality. And the curly braces are blade templating syntax {{ }}. So in this scenario if the user uses a different language than English the "Dashboard" text will change to that language given that it is defined in that language. The lang directory handles all the language translations files.
Learned something new today, thanks!
The terms are internationalization (i18n) and localization (l10n)
Awesome!
13:14 you can do the live reload if you download only breeze without vue and anything it will do the same what you are seeing and when you do php artisan server and then do npm run it will work like when u do some change in file it will show up instantly without the reload so nothing different
Wow that s why i saw some similarity with i18n Multilanguage library
I didn't even notice the 20 mins pass by, I need more!
Nice! You might already know this by now, but you can get live-reloading by running `npm run dev` instead of `npm run build`. That comes with the Vite setup in Larave.
That won't live reload, it would only recompile the assets. Or does it work specifically for jetstream?
@@joseph_oluwayomiit changed when you use vite in latest version
@@joseph_oluwayomi Its does hot reload when you use 'npm run dev' and 'php artisan serve' together. Or now you can use 'composer run dev'
There is an existing hot reload for Laravel in development mode.
1) Open up a new terminal and run 'php artisan serve.'
2) Open another terminal and run "npm run dev"
Provided that you installed either Jetstream or Breeze, the hot reload comes out of the box.
npm run dev works without any starter kit
For anyone finding this is a year later, Laravel has now introduced 'composer run dev' as a command that runs all commands such as 'php artisan serve', 'php artisan queue:listen', 'php artisan pail' and 'npm run dev' all concurrently inside 1 terminal.
I came here to say Lavavel is a collective work and not only Taylor's, but then I looked at the contributions graph and I was like, "Hey, the man well deserved his Lambo!"
For those curious, at the time of writing this comment, Taylor has 3,370 commits and the next closest person has 302.
Also to answer your Inertia question, it basically just allows you to do Routing on the backend with PHP instead of with your frontend framework.
Laravel makes you feel like you’re a magician. Absolutely love it!
It’s not that writing JavaScript without a meta framework is scary, it’s a pain. When you’ve written thing.addEventListener 10 times in a file, you start to wonder why you didn’t just use react to begin with.
It would have reloaded if Adam used "npm run dev" instead of "npm run build"
there are no reason to use scissors to cut the grass when you're able to use a mower
you can use js with those, rails and laravel can use react or svelte or anything really, because it's sever rendering and you can server render data for first render and even plug-in hydration
we can always vue that thing up
Good to see you here babe! I knew you would come around to laravel and PHP!
I can't wait for him to realize he can create almost all the boiler templates such as Models Controllers, Factories ,Seeders ,Resources etc which just an artisan command and the other goodies that Laravel comes with
I'm a long time nodejs & python developer.... then I tried a laravel a bit... & now its become my favourite framework
it's surprisingly good to hear you talk and discover your way through php and laravel (this is my first video), you don't go unconfortably too crazy on stuff, you sound mature, chill and fun. What an enjoyable experience, keep it up!
I love Laravel and have been using it for years! It's a stable and battle tested framework with a LOT of stuff out of the box, and the stuff they have included are well thought out and implemented in a away so it makes it easy to work with. The framework is using the MVC model (Model (database table representation), View and Controller (business logic, CRUD = Create, Read, Update, Delete, etc).
It's a GREAT framework.
The {{ __('Word') }} is for localization purposes.
Edit: {{}} are Laravel's standard syntax for bringing out variables from the controller. The __() is the localization part. Just for clarity.
Makes it easy to translate using simple translation files.
I know this video is 1 year ago, but cool little tip:
If you run "npm run dev" alongside of your "php artisan serve", you actually do get HMR, which includes edits to your blade files, livewire components, and more.
I'm happy to see new people looking at laravl, for what it is it's been looked over far too much. Laravel is amazing, and I also remember just enjoying my life back when I was working with Laravel.
Laravel put out a NextJS starter project and it's an absolute dream. Pair that with Laravel Octane for the backend and you have a modern framework that competes with basically anything (like ~8ms response times)
What's the name for the starter project?
im waiting for a Laravel+SvelteKit starter 😁
Regarding the one man band comment - it’s not just Taylor who works on Laravel now, there’s a pretty amazing core team. Loved the video, been waiting for this 😅 Glad Laravel is starting to get the recognition it deserves!
Loved the way you explored Laravel. Very well done, indeed. Subscribed. Hope you do more Laravel / PHP in the near future.
What I love most about laravel: 1. Queues out of the box especially async queues, so easy to setup. 2. Migrations and seeders. 3. Great routing and very easy to implement Middleware on routes and controllers. 4. Easy to capture and store Logs.
Would definitely like to see a more in-depth go at Laravel from your perspective. I've used Laravel from the beginning and can't speak highly enough about it. It's a shame that developers can be so divisive about what stack they use, but honestly if you just dive in you find Laravel has taken the best aspects of application development and made building apps fun and exciting.
Awesome video highligting the features and whats possible, as a junior dev i've been seeing PHP everywhere but haven't stopped learning the MERN stack. This video is going to change that. Laravel looks convenient to use im going to have to learn the basics and try it out on a project
Lol... cool video. Loved it.
13:52
{{ }} is like {} in React.
__() is a helper function used for localization and translation.
'Dashboard' is just a string.
Laravel = happy. Great video adam 🚀 If anyone's looking for more Laravel or PHP videos, we released task scheduling and Monolog tutorials to help the community too 💪
I’m surprised I’ve never come upon your channel before. Thank you for doing this! I enjoyed it.
Looking to learn Laravel and PHP to make an app myself so thank you for reaffirming that decision. Love to see more content in this space.
Been using Laravel for years now. It has fantastic documentation and ecosystem indeed. I just have a love/hate relationship with one of its core concepts which is the facade (not much relation w/ facade pattern). It does a lot of magic through this "facade" and as you learn more about web development, you will prefer visibility over abstraction. It's specially difficult for beginners to find what those magical string arguments are (like "auth:sanctum") and how to modify them. As with any abstraction there's a price to pay when said abstraction can't accommodate your specific implementation needs.
"accommodate your specific implementation needs" comes with experience
tbh you can go full OOP mode and leave facades to just packages or default stuff
This video made my day. I laughed through out the video. " Our (js) templates are just a bunch of files and a logo spinning". "The guy who this is probably driving a Lambo 😂". Js community has a million tools doing the same thing. Oh i almost forgot this one 😂, i was expecting a reload too and that point you mentioned, " using next js or react makes us scared of using JavaScript... "😂
Since you're so used to Next, I would LOVE to see you tinker around with Livewire! It brings a similar way of interacting with your backend, in the same way that RSCs do :D
Would definitely like to see another video!
Laravel has come a long way, the improvement to Laravel 8 from Laravel 7 was huge. It was like old JS to ES6
You can make Tailwind classes autoreload the page when you update them. I'm kinda happy that someone with your extensive knowledge in other lang and stack tries my beloved Laravel
We love to see it
I used nextjs a lot for work and personal projects, and now I'm building a new project for a client and decided to go with Laravel because of how stable and mature the framework is and how much functionality you get out of the box. It also works great with any front-end framework.
How do you guys change frameworks in such small time ? I am learning frontend and backend and is requiring atleast 6 months . You people be like. I will use laravel for it ? Is it that easy ?
@@bibekkoirala352 laravel is just really great bro, let's say you learn frontend only html, css, and simple js library. and the backend u learn php oop. u will create something big on laravel faster than full js stack, especially on common feature.
@@bibekkoirala352 if you already have atleast2 years experience in software development, switching framework is much easier just like you switch game
@@bibekkoirala352 i’m the same way, I think it’s easy, if you were just building nonsense from scratch, but if you dive into something that is already built in a framework, it takes a long time to sort out the functionality. That’s where I am with laravel. Really struggling to follow. What is going on when I need to make simple changes to a front end component only require minor JavaScript, and tailwind modifications. I think Laravel is too bloated. I prefer react and next JS.
Ah I think I needed to see this video. I started out with Laravel about 10 years ago and at some point decided to go all in on JS with Next.js. This reminds me of how simple my life used to be and how much money I was still able to make. I really hope PHP and Laravel sees a resurgence in popularity. It really deserves it. The devs that I work with see PHP as a baby language and look down on those that use it, this needs to change because it’s so much more mature now.
Just wanted to say,
In your Blade component, __("Dashboard") is a function used for language localization or translation. It is a shorthand for the __() helper function in Laravel's Blade templating engine. The string you surround with __("text") can be translated easily
Lots of great comments here. I miss my Laravel days for these reasons. Another big thing that was glossed over are the error/context modals. Crazy amounts of detail, helpful info, and tools to plug into like Telescope.
❤🐘 By the way, your keyboard typing sound is so satisfying to listen, oh gosh, makes me wanna go to Monkeytype
Great content. I totally needed this. Been stuck at the Illuminate/Database/QueryException for months
I just started with Laravel a few weeks ago. Very impressive and I've always been able to make things work (Docker "Sail", github CD, building an API). Fun to watch you click around in all those folders/files as I did as well.
So far happy to have started down the Laravel road. ❤
Men Laravel looks so cool. This video is really awesome. (And your keyboard sounds so cool)
Thanks !
Haven't worked with Laravel for 3 years - using purely react native and next lately - and I really miss eloquent and query builder.
php is server base, so you will not have live reload, but cntrl F5, initiates a call to the server, which will then process, and send to the client instructions....(for creating the html, etc. in the DOM), and javascript will run after the DOM load.
I've been developing in PHP for 11 years now. Always worked for very small companies so my own opinions on using a framework were never challenged. I thought that using a framework would be severely limiting. About 5 years ago, a dev came on board singing the praises of Laravel. He was right and I haven't looked back.
And here I am wondering why next.js is reinventing ssr for the 5th time instead of making cool things like Next.js Jetstream...
Inertia can be used even without Laravel and it enables you to pass array of key => value pairs from your backend code to a frontend Vue (or React) component that then receives those named array keys as properties set to values that you've given to those properties in your backend code. It's literally a glue between frontend and backend so your app can be more backend heavy and frontend is just made up of components that receive data they need from your backend controller that renders them. Also, routing is done on the backend side, not in Vue or similar
Love it! Welcome to PHP 🍻
Great video 🍿Been a fan of Laravel for a long time. Glad to see that you are encouraging more developers to use this amazing framework 😉
People should be encouraged to use Symfony. Not Laravel with all its design flaws, heavy use of static proxies and other violations of good software design practices
Yes laravel is great been using it since day one. I also code in vanilla php c# c++, and laravel is unmatched in terms of speed of development.
Awesome video! How do I do this terminal setup?
That makes two of us asking the same question
Love this video! Was also wondering which NeoVim plugin you use to hide the .env values. Are you able to share? Thanks!
cloak! github.com/laytan/cloak.nvim
@@adamdotdev You're the best! Thank you!
Welcome to the community
This was on my recommended today. Definitely want to check out Laravel sometime myself for a small project to try it.
Hello!
It's been a year since you posted this video. I'm curious to know if you've continued with laravel.
love to see you dig in more in to code
in the olden days I used to make tons of personal/corporate websites with custom back-ends using readily available CMS like joomla, drupal or wordpress. Half my working time was making new websites, the other half was fixing the bloody mess created by script kiddies and all sorts of hackers. Laravel (version 4 I believe it was) changed that routine for good. It also made me realise that PHP does NOT suck. At all. I was the one who sucked, as a developer.
Taylor's (yes, he single handed created the foundations of Laravel) famous attention to detail is not just the comments. Just open the Laravel vendor folder and look at the code. Look at it. LOOK AT IT.
Laravel is the web developer's word for love.
Php does YES suck. Read my comment
@@pashabolokhov are you seriously expecting me to browse over almost 300 comments to find yours and read your opinion about a programming language which is used in the vast majority of the whole freaking internet?
Yeah, let me think about that for a moment...
Wow this is hot stuff! I moved from JS only to Laravel because its structured, robust, insanely fast and iam so much more productive then building it with JS only (takes insane amount of time compared), also the hosting is much cheapter then JS, more simple with Laravel and it will do all the auth/api whatever out of the box. And you can build whatever. I will follow your journey!
PHP by default has the issue of putting strain on the server, while most JS Frameworks distribute the load on the clients.
After working with mern stack, when I started learning laravel, it felt magical.
I *really* enjoyed watching this. Thank you. (I've been doing PHP since it appeared, even built my first CMS with its predecessor, Apache SSI ("server side includes").) Gonna go see if you've posted any follow ups now ;)
Nicely done, I'm by no means a lover of PHP but it is exciting to see Laravel being in the spotlight. The fact that you went from deps to db to functional dashboard in ~2 minutes. ++ I'm looking forward to seeing you do more PHP things.
I’d be curious what the update/upgrade experience is. I wonder if there’s an old release you could start from and upgrade to the latest stable (potential video idea)? I have no idea what that experience should be with Laravel, but past experience with frameworks like it has taught me that upgrades should be miserable 🤣
@@cloudnull I've taken one project from v6, v7, v8, v9, to v10 and it's been pretty easy each time! There's a service Laravel Shift that does most of the lifting for you but even doing it manually isn't bad.
Tons of great improvements come out in minor releases as well.
I get not liking legacy PHP, but version 8 and up is a totally different ballgame. There's stuff there that makes even razor-edge TypeScript devs jealous.
Laravel is for me the best framework in PHP and the Error Page is very helpfull on development to fix the error.
Your terminal colors are so much cooler than mine.
__(‘…’) is for translations
livewire = 2way data binding with the server like in vueJS because i feel it was inspired by it more than other frontend frameworks
inertiaJS = you basically make a monolith app with be it client/ssr (based on what you need, if you dont have public pages just dont install ssr, tbh even if you dont have SSR i got over 95% scores for SEO), you use your logic on the backend for full data/partial/on demand data load that you just pass to the frontend framework and it just works
TBH I have been using laravel for 6 years, growing with it, it tought me lots of good concepts and i preffer to keep JS just for frontend stuff, backend world doesn't need to be reinvented
Now if you need deep file manipulation on the backend like images, videos, lots of imports, yeah you might need to do asynchronous stuff using queues that are built in.
As a final notes i kinda hate the HYPE-train in the JavaScript world, like all tech trends it mostly MARKETING
Man, although Laravel has tons of files, I just love it, it makes you feel like you're not working on PHP application.
Great video Adam, it was very refreshing to see you give an honest take on Laravel vs. the typical PHP shit post that every content creator makes for some cheap clicks. Its an excellent framework that just simply works and is overfilled with quality of life workflows.
Would love to see you dive into this world more!
it has live reload once you run npm dev
Inertia abstracts away communication between FE & BE, it's like having a React template, you don't have to worry about doing API calls manually, you build your React/Vue page and inertia takes care of preloading data from the server when the page is rendered and then all updates are done async via special json format. The FE component just takes in the props and renders.
Laravel and PHP more generally is not the PHP it used to be, and is no longer deserving of the bad wrap.
I dove into JS and its ecosystem 6 months ago, and couldn't believe how convoluted it is.
Laravel comes into its own with testing too - it is so. Damn. Easy.
Welcome to the dark side ;)
Laravel is just awesome!! Btw how do you hide the env data? Is this nvim plugin?
Ooh how did you set up nvim to conceal env values?
Need more videos from you on this - perhaps try building something as simple as CRUD with Laravel Livewire! It's basically everything you love about JS but in PHP.
more to come!
i dont know why people hate on php/laravel
I have started my life with javascript php, and chose laravel and its AMAZING you really enjoy and have fun writing laravel code
What mechanical keyboard do you have? Absolutely love the sound of the switches
it's a Mode Eighty with Mode Signal switches!
Laravel is great. The only thing I don't like about the MVC frameworks is that I can't figure out a way to do smooth animated page transitions
Not even Webflow can do that, only a virtual DOM?
That _ _dashboard is an thing for universal translation syntax. So imagine you have site in ENG, DE, PL etc.. and depend of the locale of the user it will switch the language displayed.
Btw.. @adamdotdev did you converted to laravel religion yet ?
I laughed a lot when you said will rebuild the app to see the teams feature :P
"Oh boy, it's brew" really hit home
With Vite you can get live reloading on blade files.
Do Npm run Dev for live reloads 👍
wow i love this channel
wow i love YOUR channel!
I believe Livewire 3.0 has auto reload. What a fun video to watch for a PHP Dev!
Laracast is also a really good resource.
I am really interested on seeing how far you have gone with this.
What You was run into at 13:31 {{ __('Dashboard') }} is nothing more then a Laravel helper function for translation of a string. You are able to set the application language for other than english, and when you do that this helper function will translate it for you to the chosen language. The {{ }} means, that you want to run PHP code in the HTML code, so this all together means: you run the Laravel frameworks __() helper function for possible translation of an english written string. You can read more about helper functions in Laravel documentation or get a deeper understanding of it by watching the 'PHP for beginners' series at th-cam.com/video/U2lQWR6uIuo/w-d-xo.html. (I saw later on that someone already did this answer, but I leave it so, maybe there is a bit more information in this remark.)
It has live reload, you have to run vite while working on the files.
Oh my god finally
I like your zsh colorscheme, custom ?
Inertia allows you build your frontend as SFC and have it run like an SPA, but using Laravel's routing and server side logic.
It's just an adapter linking both sides of the stack.
Roughly a year later, did you end up building something with it?
I'm sold! I have to try this!
Did you ever build that video using Vapor? I’d love to see it. I’m starting a b2b saas using Laravel and I want to use Vapor.
"HMR how cool" hahaha, great video!
Like it sir ??
love it so far!
Please try Livewire to get even more closer functionality to JS frameworks.
I like Laravel and we use it at work but I find things like simple Queues, Auth, Email is way over abstracted and creates problems and headaches when having to maintain or add new customization's. I would prefer a Laravel build with just the ORM and router.
would love to hear your thoughts on why Queues / Auth / Email is over abstracted, looking keenly at Laravel for a future project
Not sure... ORM's aren't my piece of cake either and routing is easily done at the http server layer, too.... What remains? That's probably why I don't use it 😅
@@LukePighetti From my view, Laravel abstracts alot away from the developer and uses different libraries and plugins for different feature. It tells you what to do instead of explaining how things should be done in a sense. This is not really my cup of tea. So like for auth using Oauth 2.0, you would have to install a library or plugin to handle it and just follow the instructions to set it up but if something fails, it can be difficult to trouble shoot since you really didn't get to appreciate how it actually works.