Laravel for the Real World
3-days of intense hands-on workshop and training
Welcome to the 3-day intensive Laravel training course! This course is designed to bridge the gap between academic learning and industry requirements. Laravel is one of the most popular PHP frameworks, renowned for its elegance, simplicity, and ability to streamline development processes.
In today's fast-paced tech world, mastering Laravel can significantly enhance your ability to develop robust, scalable, and maintainable web applications.
Unlike academic courses that often focus on theoretical aspects, this training is hands-on and tailored to real-world scenarios. It is conducted by industry veterans with over 30 years of experience, ensuring that you gain practical insights and skills that are in high demand.
Learning Outcomes
By the end of this course, participants will be able to:
- Understand the core concepts and architecture of Laravel.
- Set up and configure a Laravel development environment on a remote headless Ubuntu server.
- Develop and deploy a Laravel application using industry best practices.
- Integrate databases and manage migrations and seeders.
- Implement authentication and authorization.
- Utilize Laravel's Eloquent ORM for database operations.
- Develop RESTful APIs using Laravel.
- Handle testing and debugging in Laravel.
- Deploy Laravel applications to production.
Prerequisites
Participants should have:
- Basic knowledge of PHP and object-oriented programming.
- Familiarity with HTML, CSS, and JavaScript.
- Basic understanding of web development concepts.
- Experience with command-line interfaces.
- VS Code installed with the SSH plugin configured for remote development.
- Access to a remote headless Ubuntu server.
Training Outline
- Introduction to Laravel
- Overview of Laravel and its Ecosystem
- Features and Benefits of Using Laravel
- Understanding MVC Architecture
- Setting Up a Laravel Development Environment on Ubuntu
- Installing PHP, Composer, and Laravel
- Setting Up VS Code with SSH Plugin for Remote Development
- Initializing a New Laravel Project
- Laravel Basics
- Project Structure and Key Directories
- Configuration and Environment Variables
- Routing Basics
- Defining Routes
- Route Parameters and Constraints
- Controllers
- Creating Controllers
- Controller Methods and Route Binding
- Views and Blade Templating
- Creating and Using Blade Templates
- Template Inheritance and Components
- Database Integration
- Setting Up a Database
- Configuring MySQL/PostgreSQL
- Laravel Database Configuration
- Migrations
- Creating and Running Migrations
- Modifying and Rolling Back Migrations
- Eloquent ORM
- Defining Models
- Relationships (One-to-One, One-to-Many, Many-to-Many)
- Query Builder and Eloquent Methods
- Setting Up a Database
- Form Handling and Validation
- Creating and Handling Forms
- Validating Form Input
- Displaying Validation Errors
- Authentication and Authorization
- Built-in Authentication
- Registering and Logging in Users
- Password Reset Functionality
- Authorization
- Defining and Using Gates and Policies
- Built-in Authentication
- Building RESTful APIs
- Introduction to RESTful Services
- Creating API Routes and Controllers
- Resource Controllers and Collections
- API Authentication using Passport or Sanctum
- Handling API Requests and Responses
- Advanced Eloquent Techniques
- Query Scopes
- Mutators and Accessors
- Advanced Relationships and Pivot Tables
- Testing and Debugging
- Setting Up PHPUnit
- Writing Unit and Feature Tests
- Debugging Techniques and Tools
- Deployment
- Preparing for Deployment
- Deploying Laravel Applications on Various Platforms
- Shared Hosting
- VPS/Dedicated Servers
- Laravel Forge and Envoyer
- Configuration and Environment Management in Production
This training is designed to give you a comprehensive understanding of Laravel and its applications in real-world scenarios. By the end of this course, you will be equipped with the skills and knowledge to develop, deploy, and maintain Laravel applications efficiently, meeting industry standards and demands.
Practical, connected learning
My wider training approach brings hands-on implementation and systems thinking together, connecting technology with real operational needs.