Laravel & Realtime: Build Several Realtime Apps with Laravel
4.6 (38 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
326 students enrolled

Laravel & Realtime: Build Several Realtime Apps with Laravel

Build realtime notifications, games, chat rooms, and more realtime applications with Laravel and Websockets.
4.6 (38 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
326 students enrolled
Last updated 6/2020
English [Auto]
Current price: $44.99 Original price: $64.99 Discount: 31% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 5 hours on-demand video
  • 4 articles
  • 4 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Build a realtime notifications application
  • Build a realtime API with Laravel
  • Create a game that works in realtime
  • Create a chat room that works in realtime
  • Transmit private messages and events in realtime
  • Broadcast events and public messages in realtime
  • Master the essences of realtime applications
Course content
Expand all 49 lectures 04:53:48
+ Introduction
5 lectures 12:01

During this class, you will know a little about the course, the instructor and what he will teach you about realtime applications with Laravel.

Preview 01:35

In this class, I explain the details of some of the products and applications that you will obtain and understand at the end of the course, as well as what to expect from the contents.

Preview 03:49

In this class, I explain some details about how realtime applications traditionally work with Laravel.

Preview 03:46

Through the question system, you can solve your doubts, but it is very important that you ask them in the right way to help you better.

How to Ask Questions

Some details that may interest you about the development environment that will be used during the course.

The development environment to use
+ Starting with the Laravel Structure to Create Realtime Applications with Laravel
5 lectures 27:38

Use composer to get the initial structure of Laravel and then configure the project a bit to work properly for the course.

Preview 07:38

It is always helpful to have the source code of the course, at hand, to answer questions and compare it with yours in case of problems.

Preview 00:28

Use composer to add a new dependency that allows you to automatically generate the components for login and user registration.

Preview 06:00

To operate the project assets (JavaScript and CSS) it is necessary to compile them, using NPM.

Compiling Some Required Components Using NPM

It is important to understand how the entire frontend process works with Laravel Mix and in the process improve some components.

Exploring the Way as Laravel Mix Works in Laravel
+ Configuring Laravel to Handle Events and Messages on Realtime
2 lectures 13:53

Now that your project works with Laravel. It's time to introduce the realtime part, using Pusher.

Getting Ready to Use Pusher as the Realtime Service on Laravel

Now is the time to allow the use of realtime connections to WebSockets from the frontend of the project using Laravel Echo.

Installing and Preparing Laravel Echo to Broadcast Messages
+ Creating Your First Realtime Notifications System with Laravel
5 lectures 34:55

To show the notification to the user, it is necessary to add a component that allows it. In this class, you will add a generic component that allows instant notification messages for the users of the application.

Adding a Generic Component to Show Notifications in Laravel

To broadcast a message or element, it is necessary to create an event that exposes the information and data to be broadcasted in realtime.

Creating an Event to Notify Users’ Session Changes

Through Laravel's events, you can broadcast the messages when there are changes in a user's session, but to dispatch the events in realtime, you must use a listener for that Laravel events.

Using Laravel Listeners to Broadcast Changes on Users’ Session

Now that you are broadcasting the notifications and their type in realtime, you must add the reactive part to the project so it can display those messages according to their type in realtime for any user.

Showing the Notification on Realtime Using Laravel Echo

Currently, your notifications can be viewed by any user of the application. Now, you will see how to transmit those events only to users who are authenticated in your application.

Broadcasting the Event Only to Authenticated Users
+ Creating a Realtime API with Laravel
5 lectures 38:38

Before you can broadcast anything in realtime, you need to build your API during this class.

Implementing the Actions Over a Resource to Broadcast

Now, it is time to use that API directly from your application to be able to show the realtime functionalities that you will exhibit in the following classes.

Showing the List of User to Manipulate It on Realtime

Now that your API works, it is time to create the events that will be transmitted in realtime when there are changes in the resource used in the API.

Creating the Events to Indicate Changes on Users

Once again, you will be able to use Laravel listeners to transmit events in realtime when there are changes in the model used in the API.

Broadcasting the Events Over Users on Realtime

Now that the events are transmitted in realtime, it is time to react instantly to them and show those changes in the current user list. All in realtime.

Showing the Changes on the Users’ List on Realtime
+ Creating a Realtime Game with Laravel Echo
4 lectures 31:12

During this class, you will create all the visual components that make up the game and bring some life to it through realtime events.

Adding the Visual Components of the Realtime Game

It is time to build the events that will transmit the important data of the game so that it can work in realtime for all users.

Creating the Events of the Game to Broadcast

To coordinate the execution of the game and the transmission of events in realtime at the right time, you will create a Laravel command that takes care of this.

Creating a Command to Broadcast Game Events on Realtime

It is time to bring the game to life by modifying the visual components according to the events and messages received in realtime.

Showing Events to Players in Realtime with Laravel Echo
+ Creating a Chat Room Using Realtime Messages with Laravel Echo
5 lectures 31:53

Again, the first step will be to create visual components. In this case, you will create the components to display the list of messages, users and allow you to send new messages in the chat in realtime.

Creating Visual Components to Send Messages in Realtime

With this chat, you will explore the presence channels and one of the best examples for this is to obtain the list of users connected to a specific channel.

Managing the List of Connected Users in Realtime

It is time to create the event that will allow the message sent by any user to be transmitted in realtime through a request to the project.

Creating an Event on Sending Messages in the Chat

Now, it is time to transmit the message received in realtime through a request to the project.

Broadcasting the Event Created When Sending a Message

Now that the message is being received, it is time to show it to all users connected in the chat.

Showing the Broadcasted Messages to All Users
+ Allowing to Send Private Events in Realtime with Laravel Echo
3 lectures 19:39

In this class, you will add some visual and functional components in the chat view to allow you to execute actions associated with specific users.

Adding Components to Allow Events Between Users

Now that you can send associated actions to a single user, it is time to create the event for that action and transmit it only to the corresponding user.

Creating and Broadcasting an Event Using a Private Channel

Now that this event is being transmitted in realtime, it is time to show it only to the users involved.

Showing the Private Events Only to the Receiver and Sender
+ Adding, Configuring and Using Your Own WebSockets Server
5 lectures 31:33

During this class, you will create a new Laravel project in which to create your new WebSockets server, completely independent and separate from your current project.

Creating a New Laravel Project for The WebSockets Server

The first step for having your own WebSockets server in Laravel is to add a package called Laravel WebSockets. Let’s do it.

Adding Laravel WebSockets to The Project

Once you have Laravel WebSockets in your project, it is time to configure the applications that would be authorized to use the WebSockets server

Configuring an Application in the Laravel WebSockets Server

Now everything is ready to use your own WebSockets server with Laravel from your original application and replace Pusher.

Using Your Own WebSockets Server from your Laravel Project

Laravel WebSockets allows you to view server usage statistics. In this class, you will see how to configure it and access it there.

Preview 04:39
+ Deploying Laravel WebSockets on a Server
4 lectures 27:33

The first step will be to use the Github Repository to clone the current structure of the Laravel WebSockets server and deploy the project in the server

Cloning and Deploying the Laravel WebSockets Project

You need to be sure the WebSockets server is always running, so you will use Supervisor to ensure that.

Using Supervisor to Execute the WebSockets Server

A reversed proxy will help you to add a security layer and first pass every request to the WebSockets server through a web server like Nginx.

Configuring a Reversed Proxy for the WebSockets Server

Now that you successfully deployed your WebSockets server with Laravel, it is time to update your realtime application to use that new remote server.

Using the New Server in the Laravel Realtime Application
  • Have PHP installed and functional in your system (PHP 7.3 or higher is recommended)
  • Have composer installed and functional in your development environment
  • Recommended, PHP skills
  • Everything else will be explained in the course :)

Learn to build realtime applications with Laravel, using multiple examples along the course.

Everyone talks about realtime applications, but it is not always clear how to achieve it and the advantages that this gives to any project. During this course, I will show you, using multiple approaches with different applications, how to build realtime applications for any of your projects.

Are you looking to interact in realtime and instantly with the users of your projects?
We all should and, in this course, I will show you how to do it in multiple ways on a Laravel project. Additionally, you will be able to use and deploy your own WebSockets server using Laravel WebSockets.

Build multiple realtime applications with Laravel
Initially, realtime applications have a simple way to work. However, there are multiple ways to use realtime data and events depending on the different applications and results you require. In this course, I will show you different approaches to apply and learn to build your own realtime applications with Laravel.

You will learn by creating realtime notifications, a realtime API, a realtime game, a chat, and more.

Use and deploy your own Laravel WebSockets Server
During the course, you will be able to use Laravel WebSockets as an alternative to Pusher to use your own WebSocketsServer.
Laravel WebSockets is a Laravel package using Ratchet PHP, that allows you to create a complete WebSockets server from a Laravel project easily.

Why choose me?
Because I'm always there to assist and guide your learning :)

More than 16,000 students appreciate the effectiveness of the answers and assistance to all their questions and their more than 3,400 positive ratings prove it.

Because I not only teach you Laravel and realtime, but also how to solve real-world problems with Laravel.

What's good about Laravel?
Laravel is the most popular framework for PHP. With Laravel, you can develop high complexity PHP applications in a very short time, which includes, thanks to tools like Laravel Echo, realtime applications. During the course, you will see the enormous facilities that Laravel offers when implementing complex tasks and broadcast events and messages in realtime. Of course, you can use the most recent version of Laravel (Laravel).

Why realtime applications?
Persistent connections with WebSockets allow you to keep a constant flow of data, transmit it and react to events instantly. With this, you can immediately interact with your users and maintain a consistent and high-level user experience, as well as keep your information and data constantly updated.

At the end of the course, after exploring multiple ways to implement and use applications in realtime with Laravel you will be able to apply it with total confidence in your own projects.

So join now to apply realtime connections in multiple ways:

  • Build a realtime notification system with Laravel

  • Build a realtime API with Laravel

  • Create a game that works in realtime for multiple connected users.

  • Build a chat room with realtime messages

  • Build a system of private interactions between users in realtime

  • Use public channels to broadcast events and messages in realtime with Laravel

  • Use private channels to control the transmission of messages in realtime

  • Use presence channels to send messages and determine users connected to a channel in realtime

  • Authenticate and validate secure access to private realtime channels with Laravel

  • Create and use your own WebSockets Server with Laravel

  • Deploy your own Laravel WebSockets server

Why take this course?
For years I have been providing online courses on multiple web development topics. Among so many topics, one of the most popular my students and that tend to generate confusion has been realtime applications with Laravel.

So, from that growing need of my students; my team and I have decided to resolve this issue definitively with a course that provides and explains the multiple approaches to build different types of applications in realtime without leaving any doubt.

The goal?
Explore the different ways to broadcast messages in realtime with Laravel applications and use it, so that you can understand the essence and fundamentals of realtime applications and use it in your own ideas and projects.

You will want to complete this course from the first class, as realtime interactions are part of what any application must currently offer and each developer must learn and domain it.

Is this course for you?
This course is probably for anyone (expert or not). This course is for you if you meet any of these conditions:

  • You are a beginner or want to start with the use and creation of applications in realtime.

  • You are a Laravel or PHP developer and you want to explore multiple ways to build applications in realtime.

  • You are an entrepreneur and want to improve the interaction of your users and your information with realtime data.

  • You have experience in web development and need to go further with realtime data interactions and exposures of your applications.

The benefits you will get

  • The flexibility to explore multiple ways to create realtime applications with Laravel.

  • The feeling of professional growth by mastering a high demand skill and utility.

  • Build any Laravel project that interacts with your users in realtime and broadcast data instantly.

  • The enormous advantage of having your own WebSockets server.

That said...
Go ahead. The world moves quickly and your users wait for that information and data that you can send them immediately (realtime).

So press the button to enter the course today.

Join everyone in this process to build multiple applications in realtime with Laravel.

Who this course is for:
  • Those who need websites that require realtime interaction with users
  • Those who need websites that display data in realtime
  • Those looking to know the essence of realtime applications
  • Those who want to know the multiple ways to implement realtime applications
  • Laravel developers who want to master realtime applications
  • Those looking for multiple practical examples of realtime applications