Course Details
24+ hours
300+ polished HD videos
Written Lessons
Quizes & Challenges
Lifetime Access
English Captions
Certificate of Completion
Private Discord Group
Deploy on Custom Domain
Fully Working Project Code
About the Course
Hey there! Welcome to my Laravel for Beginners course. I’ve designed this course to help you get comfortable with Laravel, covering the basics like routing, controllers, models, and Blade templating. We’ll also dive into some cool stuff like Eloquent ORM, form handling, file uploads, and testing, so you’ll get a solid grip on how Laravel works in the real world.
We’re going to build a fun project together — a car-selling website. You’ll learn how to let users browse cars, filter by things like make and model, and even let sellers log in, upload images, and post their own cars. By the end, you’ll know how to take this project live and host it on your own custom domain.
Oh, and to make things easier, I’ve included written notes for most of the lessons, so you can refer back anytime. Plus, there are quizzes and challenges after each section to make sure you're on the right track. It's all about getting hands-on and building your confidence!
What you'll learn
✔ Confidently build full-stack web applications with Laravel
✔ Master routing, controllers, and middleware
✔ Work with databases using Eloquent ORM
✔ Build and validate forms with Laravel’s form request handling
✔ Manage authentication and authorization
✔ Implement file uploads and manage storage
✔ Deploy your Laravel apps to a custom domain
✔ Handle frontend asset management with Vite
✔ Implement caching for improved performance
✔ Write and run tests to ensure code quality
✔ Work with sessions to manage user data
✔ Use Artisan commands to boost productivity
✔ Follow best practices for clean, maintainable code
✔ Troubleshoot and debug your applications with ease
Learn Laravel step-by-step and build better, more efficient web applications with ease!
Course Content
24 hours • 37 modules • 300+ Videos
- What is Laravel and What are its Benefits (2:26)
- Setup Working Environment (4:01)
- Create Laravel Project (3:17)
- Introduction to artisan (3:15)
- Introduction to artisan challenge (1:23)
- Explore Directory Structure (4:07)
- Create route and render blade file (2:03)
- Request Lifecycle (1:48)
- Configuration (3:32)
- Debugging Functions (1:59)
- Quiz
- Source Code
- Basics of Routing (2:49)
- Route Required Parameters (2:51)
- Route Optional Parameters (1:58)
- Route Parameter Validation (3:24)
- Route Parameter Validation with regex (3:49)
- Named Routes (2:40)
- Named Routes with Parameters (2:31)
- Route Groups (1:32)
- Fallback Routes (0:50)
- Artisan command to view existing routes (1:40)
- Route Caching (0:39)
- Quiz
- Challenge (1:42)
- Source Code
- What are Blade Directives (1:09)
- Comments (2:24)
- Conditionals (3:50)
- Switch (0:35)
- Loops (1:10)
- @continue & @break (1:25)
- Loop Variable (5:39)
- Classes & styles (3:33)
- Including Subviews (3:17)
- Conditionally Render Sub Views (1:56)
- Subview Inside Loop (3:33)
- Raw PHP (1:07)
- Quiz
- Challenge (3:52)
- Source Code
- HTML & CSS Frontend Template Source Code
- Create App Layout (6:13)
- Output Language, Application Name and CSRF Token In App Layout (4:40)
- Copy HTML Layout from HTML Template (6:12)
- Create Clean Layout and Extend in App Layout (8:57)
- Create Signup page and extend it from clean layout (6:15)
- Challenge - Create Login Page (3:52)
- Directives @section, @show, @parent (3:52)
- More on Directives (3:28)
- Quiz
- Source Code
- Introduction to Components (5:13)
- Component Slots (5:53)
- Class Based Components (3:38)
- Attributes for Class Based Component (2:59)
- Attributes for Anonymous Components (6:19)
- Additional Attributes to Components (6:29)
- Component Slot Attributes (2:15)
- Reserved Keywords (1:01)
- Inline Components (1:54)
- Layouts Using Components (15:52)
- Quiz
- Challenge - Refactor Signup Page (1:31)
- Challenge - Create Google and Facebook Buttons (3:11)
- Challenge - Create GuestLayout (9:57)
- Challenge - CarItem Component (3:34)
- Source Code
- What Are Migrations (0:52)
- Migration File Structure (2:18)
- Explore Existing Migrations (2:11)
- Migrate Artisan Commands (4:03)
- Add Columns to Users Table (1:55)
- Create Car Types and Fuel Types Tables (2:59)
- Running Migrations (2:16)
- Create makers, models, states, cities Tables (4:10)
- Create cars and car_features Tables (8:47)
- Rollback Migrations (5:40)
- Quiz
- Challenge - Create car_images and favourite_cars Tables (3:30)
- Source Code
- What is Eloquent ORM (1:53)
- Generate FuelType Model with Artisan (2:23)
- Eloquent Model Conventions (7:04)
- Generate Remaining Models (2:38)
- Route Model Binding (2:41)
- Disable Timestamps (1:29)
- Insert Records in the Database (9:07)
- Select Data - The Basics (9:46)
- Insert Data (2:47)
- Insert Data Using Fillable (7:49)
- Define $fillable on all Models (2:11)
- Define $primaryKey on CarFeatures (0:41)
- Update Cars - The Basics (1:02)
- Update Cars - Create or Update (4:20)
- Mass Update (2:25)
- Delete Cars - A Single Record (2:19)
- Delete Cars - Mass Delete (2:52)
- Rename CarImages Model (1:51)
- Quiz
- Challenge (4:15)
- Source Code
- Introduction to ORM Relationships (1:36)
- Define One to One Relationships (5:18)
- One to One Relational Data - CRUD (6:25)
- One to Many Relationships (5:13)
- Many to One Relationships (6:52)
- Many to Many - Define Relationships (5:49)
- Many to Many - Working with Data (7:19)
- Quiz
- Define Remaining Relationships (6:59)
- Source Code
- Introduction to Factories (1:39)
- Generating Factories (2:08)
- Factory Naming Conversion (2:37)
- Use Factories to Generate Data (4:18)
- Factory Sequences (2:51)
- Factory States (2:17)
- Factory Callbacks (1:12)
- Factory Relationships - One to Many (7:19)
- Factory Relationships - Belongs To (2:54)
- Quiz
- Define all Factories (14:55)
- Factory Relationships - Many to Many (3:21)
- Source Code
- Render Cars on Home Page (4:38)
- Query Data - Different Methods (4:48)
- Render Cars on Search Page (3:17)
- Ordering Data (1:53)
- Output Content on Car Details Page (17:13)
- Output Content on My Cars Page (9:14)
- Implement Watchlist Page (9:22)
- Eager Loading (6:41)
- Eager Loading on Home Page (4:06)
- Eager Loading on Other Pages (2:26)
- Database Joins (8:55)
- Quiz
- Source Code
- Separate Components for Maker and Model Selects (7:35)
- State, City Dropdown Components (3:43)
- CarType and FuelType Dropdown Components (3:42)
- Re-use Components on Search Page (2:43)
- Access Request Data (5:37)
- Implement Car Search (11:19)
- Populate Search form with Request Data (10:13)
- Show Text When no Cars are Found (1:46)
- Implement Sorting Cars (8:54)
- Source Code
- Implement Form Submission with @csrf Directive (2:10)
- What is CSRF and How it Works (1:44)
- Disable CSRF Validation (1:50)
- Prepare Car Create Form for Submission - Part 1 (14:47)
- Prepare Car Create Form for Submission - Part 2 (8:21)
- Create New Car (3:16)
- Create Car Features (1:56)
- Fix Bug When Car Without Image Was Not Rendered (5:36)
- Don’t Show Car Details Page for Non Published Car (1:29)
- Create Car Images (12:46)
- Quiz
- Source Code
- Introduction to Validation (1:53)
- Writing Validation Logic (4:53)
- Available Validation Rules (0:52)
- Handle Validation Errors (6:01)
- Validation with Bags (3:19)
- Repopulating Forms (3:36)
- Manually Creating Validators (4:34)
- Customize Validation Messages (5:24)
- Conditional Validation (4:35)
- Validating Arrays (6:05)
- Validating Files (3:55)
- Custom Validation Rules (4:32)
- Project - Implement All Validation Rules (15:23)
- Quiz
- Source Code
- Introduction to Authorization (0:46)
- Introduction to Gates (7:40)
- Advanced Gate Features (3:28)
- Introduction to Policies (3:56)
- Methods Without Models (3:32)
- Guest Users in Policies (1:30)
- Authorize Actions Using Polices (3:41)
- Policy Filters (2:49)
- Challenge - Add Authorization Logic to All Methods (3:10)
- Quiz
- Source Code
- Fix Creating Car Bug (4:10)
- Fix Bug of Adding Car Into Watchlist (10:23)
- Read Full Phone Number (8:59)
- Redirect User to Profile Page if Phone is null (5:16)
- Show "There are no cars" text on Home Page (1:52)
- Fix Error on Car Details Page if User is Guest (1:11)
- Update Composer Packages (2:11)
- Fix URL for “Manage your images From Here” (1:00)
- Change Home Page Slider Button Actions (2:21)
- Source Code
- Fix Bug When We Add Car into Watchlist as Guest (3:29)
- Introduction to Testing (1:11)
- Explore and Run Existing Tests (2:14)
- New Tests for Auth Pages (4:20)
- Database Configuration (6:02)
- Test Unauthorized Access on Car Create Page (2:42)
- Challenge - Test Unauthorized Access on Profile Page (2:24)
- Http Test Response Assertions (3:00)
- Debugging Responses (2:26)
- Shorter Syntax of Writing Tests (3:25)
- Acting as Authenticated User (4:13)
- Challenge (8:26)
- Home Page Tests (6:37)
- Test Login Page Opens and Content is Visible (6:05)
- Test Login Functionality (7:42)
- Test Signup Page (13:15)
- Test Password Reset (6:35)
- Test Creating New Car (11:35)
- Test Creating New Car With Images (3:52)
- Test Data Validity & Create Car Features (6:41)
- Test Rendering Car Update Page (24:24)
- Test Update Car Details (6:01)
- Test Delete Car (4:08)
- Test Adding Images to Car (9:30)
- Test Deleting Car Images (6:01)
- Test Update Image Positions (8:15)
- Test Navbar Items (7:25)
- Test User Access Somebody Else's Car (6:50)
- Source Code
- Setup VPS Server (11:18)
- Access to Server using SSH (3:31)
- Generate Public/Private Keys and Put on Github (3:28)
- Clone the Project Using Git & Setup (9:53)
- Create MySQL Database and Adjust .env (3:19)
- Buy and Assign Custom Domain (7:50)
- Implement Signup with Google on Production (6:34)
- CI/CD with Github Actions (19:00)
- Test CI/CD Pipelines on Failed Tests (3:10)
- Final Version of Source Code
Who is this course for?
This course is for anyone who wants to dive into Laravel.
If you’re completely new to Laravel, don’t worry! I’ll guide you step-by-step, making sure you understand the core concepts and features.
On the flip side, if you’ve worked with Laravel before and want to sharpen your skills, this course will take you deeper into more advanced topics, helping you build more complex and powerful applications.
It’s also perfect for developers who are comfortable with PHP and want to explore the world of modern web development using one of the most popular frameworks. Whether you’re a student, a freelancer, or someone looking to add Laravel to your skillset for job opportunities, this course will give you the confidence to build real-world applications.
Join now with a 7-day money-back guarantee and start building real-world Laravel apps today!
Prerequisites
— Basic understanding of PHP and Object-Oriented Programming
— Familiarity with HTML and CSS for building web pages
— Basic knowledge of SQL databases (tables, primary/foreign keys, queries)