This repository contains the ordered list of Laravel topics to learn, step-by-step, with related links.
If you want to add a topic, link, or any other suggestion, please open Issues or Pull Requests.
Notice 1: The same table below is also available as a database, so you would be able to transform it to any other format you want - PDF, chart, etc. See file roadmap.sql
Notice 2: This content was filled into an adminpanel generated with our QuickAdminPanel - here's a video demo of that process on Youtube. By purchasing QuickAdminPanel, you support my free initiatives, like this Roadmap.
Create your very first simple Laravel project
Link icons: 📖 Official Docs 🎬 Video 📄 Article 🔠 Course
Topic | Learning Links |
---|---|
Routing and Controllers: Basics | |
Callback Functions and Route::view() | 📖 Basic Routing 📖 View Routes |
Routing to a Single Controller Method | 📖 Basic Controllers with Routes |
Route Parameters | 📖 Route Parameters |
Route Naming | 📖 Names Routes |
Route Groups | 📖 Route Groups |
Blade Basics | |
Displaying Variables in Blade | 📖 Blade: Displaying Data |
Blade If-Else and Loop Structures | 📖 Blade: If-Statements 📖 Blade Loops |
Layout: @include, @extends, @section, @yield | 📖 Blade: Layout Using Template Inheritance |
Blade Components | 📖 Blade Components 🎬 Laravel Blade Components: Two Examples - Laravel Breeze/UI |
Auth Basics | |
Starter Kits: Breeze (Tailwind) or Laravel UI (Bootstrap) | 📖 Laravel Breeze Official Documentation 📖 Laravel UI: Official Github Page |
Default Auth Model and Access its Fields from Anywhere | 📖 Retrieving the Authenticated User |
Check Auth in Controller / Blade | 📖 Determining If The Current User Is Authenticated 📖 Blade: Authentication Directives |
Auth Middleware | 📖 Protecting Routes |
Database Basics | |
Database Migrations | 📖 Database Migrations |
Basic Eloquent Model and MVC: Controller -> Model -> View | 📖 Eloquent: Getting Started |
Eloquent Relationships: belongsTo / hasMany / belongsToMany | 📖 Eloquent Relationships: One-to-Many 📖 Eloquent Relationships: BelongsTo 📖 Eloquent Relationships: Many-to-Many |
Eager Loading and N+1 Query Problem | 📖 Relationships: Eager Loading |
Full Simple CRUD | |
Route Resource and Resourceful Controllers | 📖 Laravel Resource Controllers 📄 Simple Laravel CRUD with Resource Controllers [digitalocean.com] |
Forms, Validation and Form Requests | 📖 Laravel Validation |
File Uploads and Storage Folder Basics | 📖 Filesystem: File Uploads |
Table Pagination | 📖 Database Pagination |
The goal of this level is to find the first job or freelance gig
Link icons: 📖 Official Docs 🎬 Video 📄 Article 🔠 Course
Master all Laravel features with 3-5 years of practical experience
Link icons: 📖 Official Docs 🎬 Video 📄 Article 🔠 Course
Responsibility for architecture decisions on large projects
Link icons: 📖 Official Docs 🎬 Video 📄 Article 🔠 Course
Topic | Learning Links |
---|---|
PHP/Laravel Design Patterns | |
Creational Design Patterns | |
Structural Design Patterns | |
Behavioral Design Patterns | |
Well-written Code | |
SOLID Code | |
Scalable Code | |
Maintainable Code | |
Reusable Code | |
Best Practices and Standards | |
Large Datasets | |
Large Database Structures | |
NoSQL Solutions | |
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 | |
Automated Testing: Process Optimization | |
Continuous Integration and Continuous Delivery (CI/CD) |