
Begin with Laravel 9 from zero, mastering basics to advanced topics through separate subjects and projects, then build an API to connect the back end with mobile and front end.
Set up the laravel development environment by installing a local server (xampp) with php and mysql and installing composer. Install vscode with laravel extensions to streamline development.
Explore Laravel's mvc architecture by installing Laravel, inspecting the file and folder structure, and mapping routes to controllers and views, with models handling database interactions and env configurations.
Explore how routing and controllers connect the model and view in a Laravel MVC project, covering get, post, put, and delete requests, resource controllers, and RESTful routing.
Explore how to build Laravel views with Blade templates, layouts, and sections. Learn to extend a main layout, yield title and content, and include a nav bar across pages.
learn to integrate bootstrap with a Laravel app using the Laravel UI package, install via composer, generate bootstrap scaffolding with authentication, and compile assets with npm.
Learn how Laravel models connect to databases via migrations, create tables with php artisan commands, and synchronize models with controllers and views in a complete model–view–controller workflow.
Explore how eloquent maps models to database tables with Laravel conventions, and how to customize with protected table and key; query with all and pass data to views using compact.
Define a one-to-one relationship in Laravel between country and capital tables with has one and belongs to, linked by a country_id foreign key.
Learn how a one-to-many relationship connects categories to products using a category_id foreign key. Define models where category has many products and a product belongs to one category.
Learn how to query relations in laravel 9 by retrieving related data across one-to-one and one-to-many relationships between categories and products, including migrations and foreign keys.
Learn to query relations in Laravel using route parameters (id and name), filter categories like Flutter and Kotlin, and apply where and price greater than or equal to 1000.
Learn how to build a simple Laravel form for creating categories, validate requests, handle post routes, and display success messages with redirects and CSRF protection.
Set up a Laravel 9 project, enable built-in authentication with Laravel UI, run migrations, and build a post model with a user relationship and protected routes.
Clean the project by removing unused routes and login controllers, redirect authentication to posts, and protect create, edit, and delete routes while keeping the index public, preparing for crud operations.
Master creating and storing posts in Laravel 9 using resource routes, post controller, and Blade forms, with validation, user association, and success messages.
Display posts in a Laravel 9 app with pagination, showing each post's title, content snippet, author, and created at time. Order by id desc and enable pagination.
Show a post by id in Laravel 9 using resource routes and a post controller, trimming index content with substr to 200 characters for the preview.
Build a Laravel 9 dashboard using auth middleware to protect routes, expose index and show publicly, and display authenticated user's posts in a bootstrap table with edit and delete actions.
Learn to edit and update posts in Laravel 9 by reusing the create form, preloading data in the edit form, and using put for post.update with redirects.
Delete a post in Laravel 9 by its owner: use post.destroy, csrf-protected delete form with confirmation, and verify the post's owner matches the authenticated user.
Fix pagination in the Laravel 9 dashboard by enabling bootstrap 5 and applying proper paginator usage for posts, with navbar links and responsive post views.
Create a comments table, set up one-to-many relations with posts and users, generate a comment model, migration, and controller, and add routes and a store method.
Implement a Laravel 9 comment system by creating and storing comments linked to posts and users, validating content, and protecting with auth. Display post comments with user names and timestamps.
Create post and user factories, seed the database with faker data using seeders, and run migrations to populate tables in a Laravel project.
Learn to add and update columns in Laravel migrations, create new migrations for adding columns, rollback to undo migrations, and seed data with factories.
Learn how caching in Laravel speeds data retrieval by storing database results in the cache, using remember and put with keys, and configuring drivers like file or Memcached.
Learn how to upload and store images and files for posts using Laravel, including saving files to storage and storing paths in the database, and displaying, deleting, and downloading them.
Learn to store images in Laravel storage, save image names in the database, and create a public link with storage:link. Display images in a Bootstrap card with title and time.
update post images in a Laravel 9 app by handling image uploads in edit forms, deleting the previous file from storage, and storing the new image in public storage.
Delete images in a Laravel 9 app by unlinking the storage file and deleting the database record, with a file existence check and updated post details view.
Learn to validate file uploads in Laravel 9 by enforcing image-only inputs, restricting types to png or jpg, and setting a max size of 1024 for clean post storage.
Learn to build a Laravel 9 project from scratch, integrate bootstrap without built-in auth, install Laravel UI, set up routes, controllers, and a layout, preparing for manual authentication.
Set up login and logout flows in a Laravel 9 course by building routes and controllers, validating email and password, and handling session regeneration and user state in views.
clean the user interface and start the dashboard in a Laravel 9 app, detailing login and register flows, authenticated nav changes, and authenticated dashboard page with its controller and route.
Build a clean Laravel 9 dashboard by moving bootstrap CSS from the layout to page-specific styles, adding public css auth.css, creating bootstrap cards, and securing the dashboard with auth middleware.
Explore implementing a many to many relationship in Laravel using a pivot table that links users and roles, with belongs to many relations and migrations.
Explore implementing a many-to-many relationship in Laravel by attaching roles to users. Learn to prevent duplicates with sync without detaching and to access pivot data like created_at.
Create a real world user form in the admin dashboard to register users and assign multiple roles using a many-to-many relationship in Laravel 9.
Explore building a many-to-many relationship between users and roles in Laravel 9, displaying all users with their assigned roles, creating new users, and rendering roles in the index view.
Build the authorization system by creating a dashboard-driven products module, linking each product to one user via a belongs-to relationship and using resource routes for index, create, and store.
Explore how Laravel gates enforce authorization for authenticated users, controlling who can create, edit, or view products via gates defined in the auth service provider.
Learn how to implement Laravel policies mapped to models, define view, create, update, and delete rules, register policy in the service provider, and enforce per-user product access.
Learn to implement Laravel queues to process email sending in the background, speeding up user signups. Configure a database queue, create the jobs table, and run migrations.
Create a custom job to send emails to all users when a new product is created, leveraging Laravel 9 queue, mail, and a product mail view.
Explore sending notifications in laravel 9 using notifiable user models, mail and other channels, and queuing with jobs to deliver product updates.
Trigger a product created event and notify users via multiple listeners, sending notifications in the background using Laravel's event system and queue work.
Learn to implement a Laravel model observer to automatically handle product events (created, updated, deleted, restored, force deleted) and trigger notifications or emails via queues.
Learn how to implement localization in Laravel by configuring locale and fallback, creating English and Arabic language files, translating dashboard labels, and handling pluralization with quantity.
Learn how to implement localization in Laravel using JSON and PHP files, add dynamic parameters, and switch languages via URL or route with a set locale.
Store the selected language in the session to persist English or Arabic across requests, using a locale key stored by a session helper and retrieved in controllers.
Store the locale and user name in the session, switch between arabic and english, and retrieve them across requests, then use forget or flush to reset the session.
Explore how Laravel middleware sits between request and response, using auth and language middleware, registering in kernel, and applying globally or to specific routes to manage language via session.
Group routes with a shared prefix and a single controller, applying auth at the group level to protect dashboard and user routes.
Learn how Laravel services enable dependency injection across controllers by injecting shared resources via constructors. Explore the service container, service providers, and registering packages and events.
discover bootstrap 5.2 installation methods, including CDN, npm, and source files, and learn to build responsive grid layouts with container, row, and columns and breakpoints.
Learn how to use Bootstrap 5 utilities to style backgrounds, text, borders, and radii; apply opacity, gradients, and responsive inline or block layouts across breakpoints like lg.
Master flex box utilities, learning display flex, row and column layouts, breakpoint md, and how grow and shrink control behavior. Explore float start, end, and none to build responsive interfaces.
Explore HTML utilities for interactive text, including user selection, shadows, responsive sizing, spacing with margin and padding, and text formatting like alignment, wrapping, transforms, and visibility.
Discover Bootstrap 5 positioning concepts from static to relative and absolute, including fixed behavior, parent anchoring, and using top, start, and translate middle for precise layout.
Explore Bootstrap typography and text utilities, including H1–H6, text-muted, lead, and display classes, then learn responsive images, figures, tables, and common helpers for cards, buttons, and layouts.
Learn how to implement bootstrap collapse with data attributes and unique IDs, toggling sections on and off, including multi-collapse and horizontal collapse, and applying it to navigation bars.
Explore bootstrap forms in Laravel, using form-control, form-label, and form-text, with inputs, selects, file inputs, and groups inside a container; learn read only, disabled, floating labels, input groups, and validation.
Design and implement a Laravel 9 dashboard by scaffolding a zero-based UI with Blade layouts, a navigation bar, responsive Bootstrap cards, and authentication pages (login and register).
Learn to implement a manual authentication system with register, login, and logout in Laravel, including routes, validation, hashing passwords, csrf protection, and guarding the dashboard with auth and guest middleware.
Implement a manual reset password flow in Laravel 9, including forget password links, email delivery with a token-based reset form.
Learn how to implement email verification in Laravel 9 by enabling must verify email, sending verification notifications, wiring routes, controllers, and middleware to protect dashboards.
Develop a Laravel 9 products crud from migration and model to a resource controller, linking products to users, handling image uploads with public storage and owner-based edit/delete access.
Implement a product policy in Laravel, enforce edit, update, and delete permissions with authorize, and boost performance with caching and pagination using Bootstrap.
Understand Laravel caching by setting time-based data persistence, such as 60 or 120 seconds, and learn to invalidate or flush cache keys after updates to ensure fresh data.
Learn when to use caching in a Laravel app and how cache expiration works. Avoid cross-user data leakage by clearing the cache when data differs per user.
Learn to manage users and permissions in a Laravel 9 project using the Spatie package, including creating users, assigning permissions, syncing roles, and building a permission-based UI.
Master the Spatie authorization system by managing permissions with middleware, gates, and policies. Assign and test permissions across users, and rely on Spatie to register rules for blades and controllers.
Import excel data into a MySQL database and export records to excel using Laravel Excel. Build post forms, routes, and import/export classes.
Create a secure authentication api with Laravel Sanctum, build routes and controllers for register, login, and logout, and expose a products api with token-protected pagination.
using Laravel is a great way to start your own work as a freelancer since it is an amazing and simplest way to create any software project like an E-commerce application, Learning Management system, Restaurant Management, school management, Dashboard, as well as creating an API to create a powerful mobile application.
this course is divided into Four Sections:
- The Basics.
-Blog Project - Beyond the Basics.
-Intermediate.
-Advanced.
-Create a Real-World Project
-API
this course will start with you from the basics of Laravel such as MVC, Database, Layout, Migrations ...etc, after that, you will create a real project based only on your basic knowledge, after that will start with intermediate topics like Cache, file storage, along with continues improve the project and start with a new project. then more advanced topics will be explained like Many to many relationship notifications, observers, events, and services along with creating a Dashboard project.
finally, we will create an API in order to communicate with the frontend, like mobile apps or web apps.
with this course.
in this course, we have explained the last version of Laravel from A to Z, in the simplest way and explained the best ways to do things instead of explaining every way and then selecting the best.