Laravel
Course Duration: 10-16 Weeks
Prerequisites:
✔️ Basic understanding of PHP and OOP (Object-Oriented Programming)
✔️ Familiarity with HTML, CSS, JavaScript, and MySQL
✔️ Basic knowledge of Composer (PHP Dependency Manager)
Module 1: Introduction to Laravel
- What is Laravel?
- Why use Laravel over raw PHP?
- Features of Laravel (MVC, Routing, Middleware, Authentication, Eloquent ORM, etc.)
- Installation and Setup
- Installing Laravel using Composer
- Setting up a Laravel project (
laravel new project_name
)
- Laravel directory structure
Module 2: Laravel Basics & MVC Architecture
- Understanding Model-View-Controller (MVC) architecture
- Laravel Folder Structure and Best Practices
- Laravel Routing Basics (
routes/web.php
, routes/api.php
)
- Creating Views using Blade Template Engine (
resources/views
)
- Understanding Controllers (
app/Http/Controllers
)
- Middleware and Request Lifecycle in Laravel
Module 3: Laravel Routing & Middleware
- Defining Routes (Basic, Dynamic, Named, Grouped Routes)
- Route Parameters & Constraints
- Route Middleware (
app/Http/Middleware
)
- Redirecting Routes and Route Prefixing
- CSRF Protection in Laravel
Module 4: Blade Templating Engine
- Introduction to Blade Templates
- Blade Syntax (
@if
, @foreach
, @include
, @extends
, @yield
)
- Creating Layouts with Blade
- Blade Components and Slots
Module 5: Controllers & Request Handling
- Creating Controllers using
php artisan make:controller
- Handling Requests and Responses
- Form Handling and Data Validation
- Laravel Form Requests and Custom Validations
- Uploading and Handling Files
Module 6: Database & Eloquent ORM
- Introduction to Laravel Eloquent ORM
- Database Configuration (
.env
file)
- Running Migrations (
php artisan migrate
)
- Creating and Modifying Tables (
php artisan make:migration
)
- Seeders and Factories for Dummy Data (
php artisan db:seed
)
- Query Builder vs Eloquent ORM
- Eloquent Relationships (One-to-One, One-to-Many, Many-to-Many, Polymorphic)
Module 7: Authentication & Authorization in Laravel
- Authentication in Laravel (
php artisan make:auth
/ breeze
/ sanctum
/ jetstream
)
- User Registration & Login System
- Implementing Email Verification
- Role-Based Access Control (RBAC)
- Laravel Middleware for Authorization
Module 8: API Development with Laravel
- Creating RESTful APIs in Laravel
- API Resource Routes
- Handling API Authentication using Laravel Passport / Sanctum
- Working with JSON Responses
- Error Handling in API Development
Module 9: Laravel Advanced Topics
- Events & Listeners in Laravel
- Queues and Jobs for Asynchronous Processing
- Broadcasting with Pusher
- Task Scheduling with Laravel Scheduler
Module 10: File Storage & Image Uploads
- Storing Files in Laravel (
storage
and public
folders)
- Uploading Images and Files
- Using Cloud Storage (Amazon S3, Google Cloud, Digital Ocean Spaces)
- Image Manipulation using
intervention/image
package
Module 11: Laravel Security Features
- Protecting Routes and Forms from CSRF Attacks
- SQL Injection Prevention using Query Builder
- Laravel Hashing & Encryption (bcrypt, hashing passwords)
- API Rate Limiting and Throttling
- Laravel Security Best Practices
Module 12: Laravel Testing (Unit & Feature Testing)
- Introduction to Laravel Testing
- Writing Unit Tests in Laravel (
phpunit.xml
)
- Feature Testing with Laravel Dusk
- Database Testing using Laravel Factories
Module 13: Deployment & Performance Optimization
- Preparing a Laravel Project for Production
- Environment Configuration (
.env
file)
- Deploying Laravel on Shared Hosting, VPS, and Cloud Servers
- Deploying Laravel Applications on Heroku, Digital Ocean, AWS, or Laravel Forge
- Using Redis for Caching and Session Management
- Optimizing Queries using Eloquent Caching
Module 14: Real-World Project Development
- Mini Projects:
- Simple Blog System
- Task Management App
- User Authentication System
- Final Project (Full-Stack Laravel App with Frontend Integration):
- E-commerce Website
- Job Portal
- Online Learning Management System (LMS)
- Social Media Platform