I’m really excited to announce the release of my latest book on Laravel, Laravel 5.4 For Beginners. This book represents a huge leap forward for me both as a coder and a writer, as we dig deeper into the Laravel framework. I covered a lot of ground that I hadn’t previously covered, and the book is as of this writing at 763 pages.
In theory, it would be simpler for me to just provide an upgrade guide for the previous version and just update the old book, but that doesn’t work for a number of reasons. One reason is that the Facebook one-click registration and authentication implementation relies heavily on the traits that ship with Laravel, and those change with every release.
Also, with this release, Laravel no longer ships with Elixir, but comes with Laravel Mix instead, so I had to rewrite all of those instructions as well.
Of course I’m not satisfied with just an updated version of the book, I wanted it to cover new ground. So one of the big new sections of the book is chapter 14, where we build a working chat application that updates in realtime.
For that we use a mix Laravel Echo, Vue.js, and Pusher. This is a fun build and we get to learn more about nested components in Vue.js.
With all the work we do with Vue.js on the searchable, sortable data grids, and the additional work in the chat application, it’s a nice little quick start to Vue.js if you haven’t worked with that before.
Also new in this edition, we cover Laravel’s wonderful eventing architecture by creating a mail event on completed registration. This takes advantage of the new markdown feature to make the email “pretty.” And of course we send dynamic data to the email, like the username.
Besides covering all the basics, like we have in the past versions of the book, we also cover some of the interesting parts of Laravel’s architecture, like the service container, service providers, automatic injection, and the new on-the-fly facades.
I think the dynamically generated facades are going to have a huge impact going forward, it’s another wonderful innovation from Laravel. I cover it briefly in the book, where we also cover service providers and class bindings. We learn how to code to a contract rather than a concrete class. That’s a little more intermediate, but we provide a gentle introduction to it.
I also thought it would be cool to support the chat application with a custom console command that you can run as an artisan command or as a cron. The command deletes all but the most recent 30 messages, so you don’t overwhelm your application with chat messages.
To recap what we cover in the book, we build a sample application that covers the following:
- One-click Facebook Registration
- Full Access Control
- Datagrid with column sorts, powered by Vue.js
- Image Management with Intervention Image Package
- Laravel Mix Asset Management
- Sending Email with Markdown
- A working Chat application with realtime updates
- Laravel Echo, Vue.js and Pusher
- Plus all the basics of application development
For those of you who purchase the book, I hope it helps you meet your programming goals. I really appreciate all the support, comments, ratings and reviews I’ve received, since I launched this blog. Thanks to my readers for sharing the learning journey with me. See you soon.