
Revise flash messages in Laravel 11 with Inertia.js and Vue 3 by using a shared data approach to pass a session message and display a front-end toast.
Learn how Inertia.js preserves form state across page navigation by assigning a unique form key to store the post to the database, keeping data intact when returning from the dashboard.
Display and format the students data in a Laravel 11 app using Inertia.js and Vue 3, with API resources, eager loading, and front-end props to render a searchable table.
Implement dependent dropdowns with Vue watchers that fetch sections from the API when the class ID changes and populate the section select in an Inertia v3 form.
Display validation messages and finalize the record creation flow in a Laravel 11 Inertia.js Vue 3 app, reusing Breeze-inspired validation and binding error states for name, email, class, and section.
Fix the issue where the search input is lost when navigating pagination by moving the update page number logic to the index view and passing it as a prop.
Implement a filter by class for the students data table using a class select and v-model. The backend combines search and class filtering in Laravel to return the correct results.
Implement backend authorization checks in Laravel 11 using gates and the gate facade, handling null users and applying student access, create, edit, and delete permissions.
Build a multiple drag and drop uploader using Laravel Inertia JS v3 and Tailwind CSS, chunk uploads, encode with queues, and broadcast progress to the front end.
Build the uploader component by wiring a file input to open the file dialog, handle multiple files, and store them in a reactive uploads object for UI display.
Create and store a video record by uploading a file, saving its data to the uploads object and database, and wiring routes and a video controller for the store action.
Learn chunked video uploads in a Laravel and Vue 3 app using mux up chunk. And display a progress indicator as chunks upload to videos.upload while the backend assembles them.
Handle video chunk uploads on the server by receiving chunked data through videos.upload, reconstructing the file with the Laravel chunk upload package, updating the video path, and storing publicly.
Learn to pause and resume uploads on the front end by emitting pause and resume events, handling upload by id, and toggling user interface buttons by paused state.
Learn to implement a drag-and-drop uploader in a Laravel 11 app with Inertia.js and Vue 3, wiring drop events to the existing chunked upload flow and progress indicators.
Finalize uploader flow by replacing old video with encoded one in video model and deleting previous file after encoding, then emit after-saving event to update front end.
Implement smooth infinite scrolling in Inertia.js based apps using Vue.js, loading initial ten records and fetching more data on scroll, addressing router issues and performance.
Define a new post route and controller, paginate ten posts, and render with Inertia using a post resource to display id, title, and teaser, setting up infinite scrolling.
Use the intersection observer from a Vue.js utility package to detect when the bottom enters the viewport and trigger loading more data, enabling infinite scrolling with a last element ref.
Define a PHP enum Lang in app/lang to store English and German, add a label method, publish Laravel language files, and verify labels with a Pest unit test.
Enhance performance by caching translations with the catch helper, using a unique key like translations.{locale} to serve English or German data from the cache.
Master prop merging in Laravel 11 with Inertia.js and Vue 3 by using the Inertia merge function to combine server data with client data, demonstrated with a notification system.
Practice secure navigation by enabling the history encryption API in Inertia 2.0, which encrypts page history with the browser crypto API and clears it on logout to prevent back-button access.
Learn how Inertia 2.0 makes partial reloads asynchronous and parallel, replacing the old synchronous behavior. See a two-button demo showing normal vs delayed reloads to illustrate concurrent processing.
In this course, we will be Learning Inertia.js (A tool to build single-page apps, without creating any APIs) along with Vue.js in a practical way by building multiple practical projects along the way.
Inertia serves as the solution, seamlessly connecting Laravel as a backend with a frontend Framework (React/Vue/Svelte), enabling us to build everything in one application (a monolith) while achieving the same outcome. The best part? We don't have to create an API.
Projects Roadmap and Status:
[Uploaded] Learn Inertia
[Uploaded] Flexible Flash Notifications with Inertia
[Uploaded] Customizing Error Pages in Inertia
[Uploaded] Building a Simple Student's Management System
[Uploaded] Implementing Roles/Permissions in Inertia-Based Applications.
[Uploaded] Multiple Drag And Drop File Uploading and Processing with Inertia
[Uploaded] Translations with Laravel and Inertia
[Uploaded] Infinite Scrolling with Inertia
Project Description:
[Uploaded] Learn Inertia
In this section, we'll look into the basics of Inertia and some of the fundamental features of Inertia.js.
Some of the topics we'll cover in this section include:
Learn how to set up Laravel with Inertia and Vue Stack.
Learn how to Format the data with API Resources.
Learn about how to work with forms, and display validation errors
Learn how to preserve the scroll behavior, and preserve the state of the page
Learn how to implement Manual Visits and Partial Reloads in Inertia.
Learn how to Implement Authorization checks (on both frontend and backend)
Learn how to Customize the default Error pages and render Custom Inertia Pages (403, 404, 419 pages)
Learn how to display Flash Notifications in Inertia/Vue
Learn how to Set up page titles and meta tags.
[Uploaded] Flexible Flash Notifications with Inertia
In this Section, we'll learn how to build a flexible flash notifications feature in Inertia.
By the end of the section, we'll have the ability to flash any notification, anywhere in our application, without repeating any code.
[Uploaded] Customizing Error Pages in Inertia
Learn how to Customize the default error pages in Inertia.
We'll learn the following in this Section:
Learn how to customize the default error pages in Laravel
Learn how to return an Inertia Response whenever any error is encountered in our app.
Learn how to render different types of errors by re-using the same vue component.
Learn how to define a config to enable/disable the rendering of custom error pages
[Uploaded] Building a Simple Student's Management System
In this section, we'll build a simple CRUD app and dive into the fundamentals of building CRUD applications with Laravel, Inertia, and the Vue Stack, and we will learn the following topics along the way:
Learn about Watchers in Vue.js and Build dependent dropdowns in Inertia/Vue
Learn how to work with Factories and Seeders in Laravel, and seed the necessary data for all of our Models
Learn how to use a Re-usable Vue Component to display validation messages.
Learn how to Implement Server Side Pagination from scratch.
Learn how to Implement Search Functionality in an Inertia/Vue Data-table.
Learn how to Implement filters in an Inertia/Vue data table.
[Uploaded] Implementing Roles/Permissions in Inertia-Based Applications.
We'll continue from where we left off in the previous section and implement the Roles and Permissions functionality without using any external plugins.
Some of the features that we'll cover in this section are listed below:
Implement Roles CRUD.
Manage Permissions related data for a specific role on Role Create/Edit Pages
Implement Authorization/Gate Checks throughout the project (on both frontend and backend)
[Uploaded] Multiple Drag And Drop File Uploading and Processing with Inertia
In this section, we'll build a multiple-file chunked uploader in Inertia/Vue with the ability to pause, resume, and cancel uploads.
And learn the following along the way:
Learn how to Integrate and Use Laravel Reverb in an Inertia/Vue Application.
Learn how to edit metadata (like the title and description) for each upload — even while they’re uploading and processing.
Learn how to queue and process uploaded files on the Backend
Learn how to report progress updates to the client using Laravel Reverb.
And many more...
[Uploaded] Translations with Laravel and Inertia
Localization 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 section, 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.
[Uploaded] Infinite Scrolling with Inertia
In this section, we'll seed our database with a bunch of data and start building the solution, we'll start by using Inertia's router to load additional data, and later we'll optimize the infinite scrolling flow by replacing the router with Axios.