Courses

Course
Laravel
Vue.js
Build a Realtime Chat with Laravel, Vue and Pinia

Using the power of Reverb, let’s build a realtime multi-room chat with Laravel and Vue with Inertia, pulling in Pinia for state management. We’ll cover: - Using the Intersection Observer API to automatically load previous chat messages - State management with Pinia - Using presence channels to show online users for each room - Client-to client communication to show who’s typing - Using flexbox tricks to keep messages scrolled into view as they roll in

21 episodes
1 hr 41 mins
Course
Laravel
Deploying Reverb with Forge

So you’ve built a realtime application. Now it’s time to deploy it. Laravel Forge makes it incredibly easy to toggle Reverb, which configures your server for you and sets up (nearly) everything you need to broadcast and listen for events. In this course, we’ll cover every step needed to get an local example application deployed to a production server, with a separate subdomain reserved for your Reverb connections.

7 episodes
16 mins
Course
Laravel
Vue.js
One Million Checkboxes with Laravel

How do you render one million checkboxes in a browser and keep them synced in realtime? Well, using a combination of virtual scroll rendering, Redis bitmaps and bi-directional WebSocket communication. Let’s cover each of these concepts to build up this fun project — you’ll be surprised at how useful these techniques are for your own applications.

16 episodes
1 hr 17 mins
Course
Laravel
Realtime with Laravel Reverb

New to realtime broadcasting in Laravel? This course covers the essentials with plenty of examples along the way, leaving you ready to start adding realtime functionality to any of your Laravel applications. Broken up into channel types, we’ll cover: - The basics of installing, configuring and running a Reverb server - Broadcasting events - Private channels - Presence channels - Client-to-client broadcasting by whispering

18 episodes
1 hr 19 mins
Course
Laravel
Livewire
Build a Multi-room Realtime Chat with Livewire and Reverb

Join a room and start chatting! This course covers building a multi-room text chat app with Livewire using Laravel Reverb for real-time updates. Using presence channels and client-to-client whispering, we’ll also show who’s online, and who’s currently typing.

14 episodes
1 hr 23 mins
Course
PHP
Build Your Own PHP Framework

Starting completely from scratch, build a modern PHP framework with all the features you’d expect. Whether you’re new to PHP or not, this is a great exercise for learning what happens under the hood, arming you with knowledge you can apply anywhere you use PHP. We’ll cover routing, controllers, views, the container, accessing the database, models, authentication, config, CSRF protection, exception handling, pagination, validation, flashing messages and much more. Let’s dive in and build a PHP framework, step-by-step!

54 episodes
4 hrs 45 mins
Course
Livewire
Build a Trello Clone With Livewire

Get ready to master drag and drop sorting in Livewire, by building a Trello clone. We’ll start out by building the interface completely from scratch, then add the ability to sort columns and cards, including moving cards around columns. As we sort everything, we’ll keep the database perfectly updated with the new order. Our Trello clone will also allow us to edit column titles inline, edit cards and add notes, archive cards and columns, and put them back on the board.

31 episodes
2 hrs 27 mins
Course
Laravel
Authentication with Laravel Sanctum and Vue

Learn how to authenticate with a Laravel API from Vue using the Composition API. We'll start by setting up a fresh Laravel project with Sanctum and Fortify, configure everything step-by-step, and then implement the ability to authenticate from Vue with a simple auth module — thanks to the flexibility of the Composition API. In the second half of the course, we’ll create our own beautiful starter kit with more features, including registration and middleware to protect routes.

21 episodes
1 hr 35 mins
Course
Livewire
Build a Livewire Comment System

Build a drop-in comment system with Livewire that instantly works for any model. We’ll cover top-level comments and replies by re-using Livewire components, editing and deleting comments, working with Alpine.js to minimise network requests, building an Alpine.js directive to display when a comment was posted, handling deleted users and loading more comments gradually. Once you’re done, you can drop a single Livewire comments component wherever you need it — and comments will instantly be enabled.

18 episodes
1 hr 40 mins
Course
Livewire
Create an AI chat bot with Livewire and ChatGPT

Let’s learn how wire:stream can help us stream ChatGPT responses as they arrive, by building a chat interface with Livewire. Each message we send and receive will be shown in chat history. It even remembers the conversation context. Sure, there are a ton of ChatGPT wrappers out there, but by the end of this course, you’ll have wire:stream in your toolkit for future projects.

6 episodes
29 mins