🎓 Program Overview
Laravel is the most popular PHP framework in the world — and in 2026 it is more powerful than ever. Laravel 11 ships with a dramatically streamlined application structure, first-class support for Inertia.js, and a mature ecosystem covering authentication, queues, real-time broadcasting, and more — all out of the box.
Combined with Vue 3's Composition API and Inertia.js's server-driven SPA model, you can build full-stack applications with the productivity of a monolith and the user experience of a modern SPA — without managing a separate API or dealing with CORS. This is the stack that gets production-grade applications shipped the fastest without sacrificing architecture quality.
The result: Full SPA navigation with back/forward history, zero page reloads, and shared props from the server — all without writing a single API endpoint. Your Laravel application stays as a single, cohesive codebase.
💡 Why Laravel + Inertia.js + Vue in 2026
📚 Curriculum — Phase Breakdown
Not a PHP introduction. This phase covers the modern PHP language features that Laravel 11 is built on — and the new streamlined Laravel 11 application structure that eliminates the old HTTP/Console Kernel complexity.
- PHP 8.3+ features: readonly classes, typed class constants, enums (backed and pure), fibers, and intersection types
- Named arguments, match expressions, and nullsafe operator — writing expressive, self-documenting code
- Composer: package management, autoloading, version constraints, and lockfile discipline in teams
- Laravel 11 application structure: the slimmed-down default app — no HTTP/Console Kernel, new bootstrap/app.php single-file config
- Service container in depth: binding interfaces, contextual binding, method injection, and auto-resolution
- Service providers: registering services, deferred providers, and the bootstrap lifecycle
- Facades: how they work under the hood, real-time facades, and writing testable code
- Laravel configuration: .env files, config caching, and environment management
- Laravel Pint: the official PHP code formatter — rulesets and CI integration
- Larastan (PHPStan for Laravel): static analysis at level 8+ — catching type errors before production
- PestPHP: the modern Laravel testing framework — syntax, expectations, and architecture testing
- Artisan CLI: make commands, custom commands, tinker, and how Artisan fits into your workflow
- Development environment: Herd (Mac) or Sail (Docker) for local Laravel development
- Laravel Breeze with Inertia.js + Vue: the official starter kit — scaffolding and understanding every generated file
The full Laravel backend stack — routing, controllers, Eloquent ORM in production depth, and a complete authentication and authorisation system.
- Route definitions: web routes, parameters, route model binding, and route model implicit scoping
- Route groups: middleware groups, prefix groups, name prefixes, and controller grouping
- Invokable single-action controllers — the preferred Laravel pattern for clean, focused controllers
- Form requests: validation and authorisation in dedicated request classes, away from controllers
- Laravel Precognition: live validation on the frontend using the backend's Form Request rules
- Resource controllers: RESTful CRUD, shallow nesting, and API resource routes
- Middleware: custom middleware, global middleware, and the new Laravel 11 registration style
- Eloquent models: fillable vs guarded, casts, and the new accessor/mutator attribute syntax
- Relationships: hasOne, hasMany, belongsTo, belongsToMany, hasManyThrough, morph relations
- Eager loading with with(), load(), withCount() — solving N+1 queries systematically
- Query scopes: local and global scopes for reusable query constraints
- Eloquent collections and lazy collections for memory-efficient large dataset processing
- Observers and model events — hooking into the model lifecycle cleanly
- Soft deletes, SoftDeletes trait, and restore() workflows
- Migrations: creating and modifying tables, anonymous migrations, foreign keys, and indexes
- Factories and seeders: realistic test data with Faker — factory states, sequences, relationships
- Cursor pagination for large datasets — and rendering pagination in Inertia.js components
- Database transactions: DB::transaction(), manual begin/commit, and deadlock handling
- Authentication internals: Auth facade, guards, providers, and the session lifecycle
- Laravel Sanctum: SPA authentication with CSRF protection — the standard for Inertia apps
- Gates and policies: resource authorisation, @can directive, and can() middleware
- Role-based access control with Spatie Laravel Permission — the standard Laravel RBAC package
- Email verification and password reset — customising built-in flows for Inertia.js
- Social authentication with Laravel Socialite: Google, GitHub, and other OAuth providers
- Email with Mailables, Markdown templates, and queueable mail (Resend / SMTP / Mailgun)
- File uploads: the Storage facade, local disk, S3-compatible storage, and temporary signed URLs
- Spatie Media Library: attaching files to Eloquent models with conversions and responsive images
- Stripe payment integration: checkout sessions, subscriptions, and webhook handling
Inertia.js is the architectural layer that makes this stack unique — eliminating the REST API entirely while delivering full SPA UX. This phase covers every production Inertia pattern in depth.
- Inertia.js architecture: server adapter (Laravel), client adapter (Vue), and the XHR navigation protocol
- Pages vs components: Inertia page components as entry points — server-injected props as component data
- The Inertia router: Link component, router.visit/post/patch/delete — scroll position preservation
- Shared data: passing global data (auth user, flash messages) to every page via HandleInertiaRequests middleware
- Flash messages: server session flash → Inertia shared data → Vue toast notifications
- Form handling with useForm(): data binding, submission, error display, and progress indicators
- Laravel Precognition + Inertia: live server-side validation as the user types
- Partial reloads: refreshing only specific props without a full component remount
- Lazy loading props: deferring expensive data until after the initial page load
- Persistent layouts: keeping header, sidebar, and navigation mounted across all page visits
- Server-side rendering (SSR) with Inertia: first-page rendering on the server for SEO — Laravel + Node.js SSR setup
- Error handling: 404, 403, 422, and 500 responses — custom Inertia error pages
- File uploads with Inertia: multipart form submission with real-time progress tracking
- Progress indicators: NProgress integration and custom loading states
- Testing Inertia responses: asserting page components and props in PestPHP
Vue 3 Composition API with TypeScript — taught within the Inertia.js rendering context throughout. Script Setup syntax, Pinia, VueUse, and production-grade form and data handling.
- <script setup lang="ts"> — the canonical way to write Vue 3 components in 2026
- Reactivity: ref(), reactive(), computed(), watch(), watchEffect() — when to use each correctly
- TypeScript with Vue 3: defineProps<T>(), defineEmits<T>(), useTemplateRef(), and component typing
- Composables: extracting and reusing stateful logic — Vue 3's answer to React hooks
- Lifecycle hooks: onMounted, onUpdated, onUnmounted, and async setup patterns
- provide/inject: dependency injection for deep component trees without prop drilling
- Dynamic and async components: lazy-loading heavy components on demand
- Custom directives: click-outside, infinite scroll, auto-focus, and tooltip directives
- Slots: default, named, and scoped slots — building flexible, composable UI
- Pinia: stores, state, getters, actions, and full TypeScript inference
- Pinia composables: combining composables with stores for modular, testable logic
- Pinia persistence with pinia-plugin-persistedstate: syncing store to localStorage
- VueUse: useFetch, useStorage, useDebounceFn, useIntersectionObserver — essential composables
- Form validation with Vee-Validate v4 and Zod: schema-based validation with TypeScript inference
- Tailwind CSS v4 with Vue: utility-first styling, cva() component variants, and dark mode
- Shadcn-Vue: headless, accessible, copy-paste components — the preferred UI library for Vue 3
- Data tables: TanStack Table v8 for Vue — server-side sorting, filtering, and pagination against Laravel
- Charts and visualisation: Vue-ChartJS and ApexCharts Vue for dashboards and analytics
- File upload UI: drag-and-drop with progress tracking, image preview, multi-file handling
- Internationalisation with Vue I18n: multi-language support with Laravel locale backend
- Vitest: the Vite-native unit test runner for Vue components
- Vue Testing Library: testing from the user's perspective — accessible queries and interaction simulation
- Mocking Inertia in component tests: isolating page components from the Inertia router
Laravel's built-in ecosystem goes far beyond routing and Eloquent. This phase covers asynchronous job processing, event-driven architecture, real-time features with Laravel Reverb, and production-grade file handling.
- Laravel queues: jobs, workers, connections, and drivers (database, Redis, SQS)
- Writing jobs: the Job class, handle(), failed(), retryUntil(), and container injection
- Job chaining and batching: sequential workflows and parallel execution with Bus::batch()
- Laravel Horizon: Redis queue dashboard — metrics, throughput, failures, and worker auto-balancing
- Queue middleware: rate limiting, preventing duplicate jobs, and conditional skipping
- Scheduled tasks: the Laravel scheduler — artisan commands, closures, and external processes
- Laravel events and listeners: decoupling application logic with the event bus
- Event discovery: automatic listener registration without EventServiceProvider entries
- Queueable listeners: processing listeners asynchronously in the background
- Model events vs domain events: when to use Eloquent observers vs explicit event dispatching
- Laravel Reverb: the first-party PHP WebSocket server — installation, configuration, and scaling
- Broadcasting events: ShouldBroadcast interface, broadcastOn() channels, broadcastWith() payload
- Channel types: public, private (authenticated), and presence (membership tracking) channels
- Laravel Echo in Vue: subscribing to channels and listening for broadcast events
- Real-time notifications: broadcasting database notifications to authenticated users
- Presence channels: tracking which users are viewing a page simultaneously — collaborative features
- Laravel notifications: multi-channel (mail, database, Slack, SMS) from one notification class
- Laravel filesystem: Storage facade, local disk, S3-compatible storage, and temporary signed URLs
- Image processing: resizing, cropping, and optimising uploaded images with Intervention Image
- Spatie Media Library: model-attached files with conversions, responsive images, and S3 storage
- Caching strategy: Cache facade, cache tags, cache locks, and the remember() pattern
- Laravel Telescope: local debugging dashboard — requests, queries, jobs, mail, and notifications
Architecture patterns for maintainability at scale, a comprehensive PestPHP testing strategy, security hardening, and full production deployment.
- Action classes: single-responsibility objects for business logic — the Laravel SRP pattern
- DTOs with Spatie Laravel Data: typed, validated data objects flowing from request to action to response
- Repository pattern in Laravel: when it adds value vs when it is unnecessary indirection
- Service classes: grouping related business logic spanning multiple models
- Value objects: immutable, type-safe domain concepts (Money, Email, PhoneNumber) in PHP
- Query optimisation: finding N+1 queries with Laravel Telescope, eager loading, and indexing
- Laravel Pulse: production monitoring dashboard — server metrics, slow queries, and user activity
- Feature tests: full HTTP request-response cycles against a real database with RefreshDatabase
- Unit tests: testing actions, services, and business logic in isolation
- Testing auth: actingAs(), assertAuthenticated(), assertForbidden(), and policy tests
- Testing queues, events, mail, and notifications: Queue::fake(), Event::fake(), Mail::fake()
- Testing file uploads: Storage::fake() and assertExists()
- Architecture testing: enforcing that controllers stay thin and no debug functions reach production
- CSRF protection: how Laravel's token system works with Inertia.js SPAs
- Mass assignment, XSS, and SQL injection protection — and when raw queries introduce risk
- Security headers: CSP, HSTS, and X-Frame-Options middleware
- Rate limiting: per-route, per-user, and global throttling with Laravel's built-in limiter
- Laravel deployment checklist: config:cache, route:cache, view:cache, and optimize in production
- Zero-downtime deployment with GitHub Actions deploy scripts
- Docker for Laravel: PHP-FPM + Nginx multi-stage Dockerfile, separate queue worker and scheduler containers
- Docker Compose: PHP-FPM, Nginx, PostgreSQL, Redis, Reverb, and Horizon in one command
- Laravel Forge: the official server provisioning tool — servers, sites, daemons, and SSL in minutes
Integrate AI capabilities directly into your Laravel application — from calling LLM APIs and building RAG pipelines to streaming responses to the Vue frontend and automating content generation via Laravel queues.
- Calling LLM APIs from Laravel: OpenAI, Anthropic (Claude), and Google Gemini via openai-php/laravel and HTTP clients
- openai-php/laravel: official OpenAI PHP SDK — facades, config, and streaming responses
- Streaming LLM responses to Vue via Server-Sent Events and Laravel's StreamedResponse
- Structured JSON output from LLMs: parsing into typed PHP DTOs with Spatie Laravel Data
- Queue-based AI processing: offloading LLM calls to Laravel queues — non-blocking AI features
- Embeddings in Laravel: generating text embeddings via the OpenAI Embeddings API from PHP
- pgvector with Eloquent: storing and querying vector embeddings in PostgreSQL from Laravel
- RAG pipeline in Laravel: document ingestion, chunking, embedding, pgvector storage, and retrieval as jobs and services
- AI-powered semantic search: replacing Laravel Scout keyword search with vector similarity search
- LLM prompt management: versioned Blade-style prompt templates with injected context
- Rate limiting and cost tracking: per-user token budgets and Laravel Cache for LLM response caching
- Content generation pipelines: queue-driven pipelines with human approval steps
- AI features in tests: mocking LLM API responses in PestPHP for fast, deterministic test suites
- Streaming AI responses from Laravel to Vue component with real-time token display
➕ Optional Add-On Modules
Extend the 5-week core with specialist cloud deployment, SaaS architecture, or AI integration. Each add-on is 2 additional weeks at a separate fee and can be taken individually or combined.
Add-OnAWS Deployment Track
ECS Fargate containers for PHP-FPM, RDS PostgreSQL, ElastiCache Redis, SQS queues, S3 + CloudFront, AWS CDK infrastructure as code, and full GitHub Actions CI/CD to ECS.
Add-OnSaaS & Multi-Tenancy Track
Spatie Laravel Multitenancy, Laravel Cashier (Stripe subscriptions), feature gating, subdomain routing, onboarding flows, impersonation, and a full tenant admin dashboard.
Add-OnAI Integration Module
LLM APIs from PHP, RAG pipelines, pgvector, streaming responses to Vue, queue-based AI processing, and semantic search. See Add-On phase above for full details.
Add-OnNext.js Frontend Alternative
Transition from Inertia to a Laravel REST API + Next.js 15 App Router frontend — Sanctum SPA auth, API Resources, TanStack Query, React Hook Form, and Vercel deployment.
Add-OnGoogle Cloud Track
Cloud Run with Dockerised Laravel, Cloud SQL PostgreSQL, Memorystore Redis, Cloud Storage, Cloud Tasks, Terraform provisioning, and Cloud Build CI/CD.
Add-OnAzure Deployment Track
Azure Container Apps for Laravel, Azure Database for PostgreSQL/MySQL, Azure Cache for Redis, Service Bus, Blob Storage, Bicep IaC, and Azure DevOps Pipelines.
🛠️ Core Tools & Technologies
PHP 8.3+ · Laravel 11
Artisan, Eloquent ORM, Sanctum, Breeze, Horizon, Pulse, Telescope, Reverb, Pint, Larastan
Vue 3 · Inertia.js · TypeScript
Composition API, Pinia, Vee-Validate + Zod, Shadcn-Vue, TanStack Table, Tailwind v4, Vite
PestPHP · Vitest · Vue Testing Library
Feature tests, unit tests, architecture testing, Larastan static analysis, Playwright E2E
PostgreSQL · Redis · BullMQ / Horizon
Eloquent migrations, query builder, raw SQL, Redis cache, Redis queues, Horizon dashboard
Docker · GitHub Actions · Forge
PHP-FPM + Nginx multi-stage Docker, Docker Compose full stack, CI/CD pipeline, Laravel Forge
Laravel Pint · Larastan PHPStan
Automated formatting with Pint, static analysis at level 8+ with Larastan — enforced in CI
📅 Schedule & Timings
Weekday Groups
Weekend Groups
📍 Location: In-house training, F-11 Markaz, Islamabad · 📱 Online option available for out-of-city participants