Laravel Learning Roadmap

This is a Laravel learning path I've compiled from my years of experience, to provide step-by-step experience and clear picture of progress.
If you have any ideas what to change in this roadmap, email me
Level 1/5. Beginner Level
Goal: to create your very first simple Laravel project.
Completed? Topic Learning Links
Routing and Controllers: Basics
Callback Functions and Route::view()
Routing to a Single Controller Method
Route Parameters
Route Naming
Route Groups
Blade Basics
Displaying Variables in Blade
Blade If-Else and Loop Structures
Layout: @include, @extends, @section, @yield
Blade Components
Auth Basics
Starter Kits: Breeze (Tailwind) or Laravel UI (Bootstrap)
Default Auth Model and Access its Fields from Anywhere
Check Auth in Controller / Blade
Auth Middleware
Database Basics
Database Migrations
Basic Eloquent Model and MVC: Controller -> Model -> View
Eloquent Relationships: belongsTo / hasMany / belongsToMany
Eager Loading and N+1 Query Problem
Full Simple CRUD
Route Resource and Resourceful Controllers
Forms, Validation and Form Requests
File Uploads and Storage Folder Basics
Table Pagination
Level Completing Project: Personal Blog
Level 2/5. Advanced Beginner Level
Goal: to be able to find the first job or freelance gig.
Completed? Topic Learning Links
Routing Advanced
Route Model Binding
Route Redirect
Create Custom Middleware Class
Database Advanced
Database Seeders and Factories
Eloquent Query Scopes
Polymorphic relationships
Eloquent Accessors and Mutators
Eloquent Collections
Soft Deletes
Auth Advanced
Authorization: Roles/Permissions, Gates, Policies
Authorization: Extra Packages - Spatie Permission, Bouncer, etc
Authentication: Email Verification
File Uploads Advanced
Drivers and Disks, Example of Amazon S3
Extra Packages: Spatie Medialibrary, Intervention Image, etc
API Basics
API Routes and Controllers
Working with API Clients: Postman or Alternatives
API Eloquent Resources
API Auth with Sanctum
API Error Handling and Status Codes
Debugging Errors
Log Files in Laravel
Try-Catch and Laravel Exceptions
Local Debugging Tools: Debugbar, Telescope, Ray
Customizing Error Pages and Messages
(optional) Third Party Bug Trackers: Bugsnag, Flare, Sentry, Rollbar
Sending Email
Mailables and Mail Facade
Configure Drivers/Services: Mailgun, Mailtrap, etc
Notifications System: Email, SMS, Slack, etc.
Automated Testing with PHPUnit / PEST
"Smoke" Tests to Check if Pages are Loading
Configure Testing Database and Test CRUD Operations
Localization / Translations / Multi-Language
Translating Static Texts
Translating Models in Database
Deployment and Version Control
Git Version Control
Deployment on Live Servers
Level Completing Project: Simple CRM
Level 3/5. Laravel Mid Level
Goal: to master all Laravel features with 3-5 years of practical experience.
Completed? Topic Learning Links
Routing Extra Features
Route Caching
Rate Limiting
Invokable controllers
Database/Eloquent Extra Features
Model Observers
Raw Database Queries
All Eloquent Features
Various Extra Laravel Features
Custom Blade Directives
Events and Listeners
Laravel HTTP Client and Guzzle
Login with X: Laravel Socialite
Creating Artisan Commands
Task Scheduling
Real-time: Broadcasting, Echo and Reverb
Jobs and Queues
Queueable Classes and Jobs
Job Dispatching, Batching and Chaining
Processing Failed Jobs
Configuring Queues: Drivers, Redis, Supervisor
Laravel Horizon (optional, if you use Redis)
API Advanced
Upload Files via API
Generate API Documentation
API Versioning
API with OAuth and Laravel Passport
Only-API Projects with Front-end like Vue.js / React.js
Only-API Projects with Mobile Apps
(optional) Starter Kits: Laravel Jetstream and Fortify
Laravel Jetstream (requires Livewire/Inertia knowledge)
Laravel Fortify
Laravel Cashier with Stripe/Paddle
Custom Payment Providers: PayPal, Mollie, etc
Automated Testing Advanced
TDD: Test-Driven Development
(optional) Laravel Dusk
Full-Text Search
Laravel Scout
Drivers: ElasticSearch, Algolia or MeiliSearch
Laravel Packages
Contributing to Packages, making Pull Requests
Create Laravel Packages
Level 4/5. Full-Stack Mid Level
Ability to create web-projects using front-end as well as Laravel back-end.
Completed? Topic Learning Links
Tailwind CSS
Choosing TALL or VILT Stack
VILT Stack: Vue, Inertia, Laravel, Tailwind
Vue.js Fundamentals with Laravel API
Vue.js with Inertia in Laravel
Alternative: RILT Stack - React.js with Inertia in Laravel
TALL Stack: Tailwind, Alpine, Laravel, Livewire
Laravel Livewire
Filament for Admin Panels
Level 5/5. Senior Level
Goal: to be trusted with architecture decisions on large projects.
Completed? Topic Learning Links
PHP/Laravel Design Patterns
Creational Design Patterns
Structural Design Patterns
Behavioral Design Patterns
Well-written Code
Scalable Code
Maintainable Code
Best Practices and Standards
Large Datasets
Large Database Structures
NoSQL Solutions
Eloquent/SQL Query Optimization
Scaling to Multiple Databases
Working with High-Traffic Projects
Stability and Zero-Downtime Deployments
Performance Optimization and Caching
Ensuring Code Quality
Writing Testable Code
Continuous Integration and Continuous Delivery (CI/CD)
Individual Roadmap function
is only for Premium Members
Premium members also get:
  • 59 courses (1057 lessons, 42 h 44 min total)
  • Premium tutorials
  • Access to repositories
  • Get to ask questions