Localisation is a breeze in Laravel applications, but what happens when you need to bring this to the client-side? Turns out in Inertia, it's pretty simple. In this course, we'll build a language switcher, share translations with the client, and build a simple translation helper for Vue to use directly in templates. We'll also cover caching translations to keep things running smoothly. The best part? With the magic of reactivity, we'll be able to switch languages without any page refresh, and see everything instantly translated.
Single-page applications are great, but they come with the challenge of maintaining two separate projects — the client and the API. Inertia serves as the solution, seamlessly connecting these two components and enabling you to build everything in one application (a monolith) while achieving the same outcome. The best part? You won't have to create an API. To be honest, when I first started working with Inertia, I was a little confused about how everything worked. If that sounds familiar, then this course is made for you. I'll guide you through everything you need to know to kickstart your journey in building single-page applications using Laravel, Inertia, and Vue.
Ready to build a forum with Inertia and Laravel? Why a forum? A forum touches a whole load of concepts that you'll use throughout your development career – particularly on the client-side, where we'll be doing most of the heavy lifting. So, let's build a clean, modern forum with features like markdown support, code highlighting, advanced filtering, user mentions, full-text search, the ability to mark best answers, and more.
Pagination is essential for almost every application. Let's take a look at an easy way to render pagination links when using Inertia with Laravel and Vue.
The Laravel ecosystem gives us packages like Laravel Breeze and Jetstream which come ready set up with Inertia installed. But what if you want to install Inertia from scratch and build your own features on top of it? In this course, whether you're new to Inertia or not, we'll be covering getting Inertia set up on a completely fresh Laravel application. We'll walk through some nice additions like server side rendering, styling with Tailwind and installing Ziggy for named routes. To finish off the course, we'll build a simple app where we can post comments to a timeline, to bring everything nicely together!
Say goodbye to the traditional email/password flow and implement passwordless authentication with Laravel! In this course, we'll cover sending a secure link via email to allow users to sign in seamlessly. Oh, and we'll cover the entire registration process too. Use it on its own, or combine it with the standard email/password flow to give your users even more flexibility.
If you're using Eloquent model observers, you'll know registering them can break your flow. How about a convenient trait to automatically hook up the associated observer? Let's build it!
Build a marketplace where sellers can list and sell files, while we take a cut of each sale using Stripe Connect. We'll cover onboarding users with Stripe Connect, creating products and uploading files, payments, and delivering purchased files to your customers. Here's everything we'll cover: - The Stripe Connect onboarding flow - Effortlessly creating products (and uploading files) with Livewire forms - Subdomains for your user's marketplace - Stripe Checkout for a beautiful, secure payment flow - Securely delivering files with Signed URLs in Laravel - Showing sales stats on a dashboard
If you're browser testing with Laravel Dusk, chances are you haven't not been able to verify that emails are being sent – that's because Dusk runs in a browser environment. In this video, we'll set Dusk up to test sending an email, and show you how to use Laravel email fakes (and a helpful package) to test that an email has been sent.
Flash notifications exist in almost every application. With Inertia, flashing notifications requires a bit more thought, and we're going to take this further and end up with a global notification plugin that just... works. By the end of the course, you'll have the ability to flash any type of notification, anywhere in your application, without repeating any code.
Let's keep our Laravel applications feeling snappy! In this course, we cover the absolute fundamentals you need to keep in mind when building anything with Laravel. While Laravel handles a lot for you, it's easy to fall into the trap of not considering and monitoring performance as you go. Keep these tips in your toolbelt, and you'll be able to develop faster apps, from the beginning.
Need to perform actions on models at a future date and time? This snippet covers scheduling a command to monitor when an action needs to happen, then dispatching a queued job to handle your action. This allows you to do things like set a blog post live at a given date and time, or whatever functionality you need similar to this. Plus, it's actually pretty easy to set up!
Allow users to choose their own subdomain, and give them their own area of your application where only their details are shown. You'll be able to register multiple routes for user areas. Everything in this short course can be easily applied to your own applications where you need this functionality. We'll cover every step of the way, and some things to watch out for. Finally, we'll learn how to deploy this and configure nginx and DNS records so you're ready to go.
Building an API? The Laravel Responsable interface is absolutely essential for keeping your response structure the same across your entire application.
Enums make working with multiple potential column values a breeze (think order statuses). Let's use an Enum in Laravel and cover storing, validating and accessing Enums. By the end of the course, you'll be able to implement Enums in Laravel with ease, and make sure your multiple choice column data is strict and easy to globally update across your entire application.
Let's take a look at how to implement effortless drag and drop sortable functionality in Laravel Nova, with the help of two packages.