-
-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Jean-Marc Strauven edited this page Aug 6, 2025
·
6 revisions
A modern, YAML-driven workflow engine for Laravel applications
Laravel Flowpipe transforms complex business processes into simple, readable YAML files. Define your workflows declaratively and let Laravel Flowpipe handle the execution, error handling, and tracing.
- π YAML-First: Define workflows in simple, readable YAML files
- π Composable: Reuse steps and groups across different flows
- π― Type-Safe: Full PHP class integration with Laravel's IoC container
- π¨ Error Handling: Built-in retry, fallback, and compensation strategies
- π Traceable: Complete execution tracking and debugging
- β‘ Queue Support: Seamless Laravel queue integration
composer require grazulex/laravel-flowpipe
# flows/user-registration.yaml
flow: user-registration
description: Complete user registration process
send:
name: "John Doe"
email: "[email protected]"
password: "SecurePassword123!"
steps:
- type: action
class: App\Flowpipe\Steps\ValidateInputStep
- type: action
class: App\Flowpipe\Steps\CreateUserStep
- type: action
class: App\Flowpipe\Steps\SendWelcomeEmailStep
use Grazulex\LaravelFlowpipe\Flowpipe;
$result = Flowpipe::fromYaml('user-registration')->execute();
- Installation & Setup - Get up and running in minutes
- Your First Flow - Create and execute your first YAML workflow
- Understanding YAML Flows - Master the YAML syntax
- YAML Flow Structure - Complete YAML reference
- PHP Steps - Creating and using PHP step classes
- Step Groups - Organize and reuse workflow components
- Conditions & Branching - Dynamic workflow execution
- Error Handling - Retry, fallback, and compensation strategies
- Queue Integration - Asynchronous workflow processing
- Artisan Commands - Powerful CLI tools for workflow management
- Configuration - Complete configuration reference
- User Registration Flow - Complete real-world example
Here's what a complete user registration workflow looks like:
# flows/user-registration.yaml
flow: user-registration
description: Complete user registration with validation and email verification
send:
name: "John Doe"
email: "[email protected]"
password: "SecurePassword123!"
terms_accepted: true
steps:
- type: group
name: user-validation
- type: action
class: App\Flowpipe\Steps\CreateUserStep
- type: action
class: App\Flowpipe\Steps\SendVerificationEmailStep
- type: action
class: App\Flowpipe\Steps\SendWelcomeEmailStep
Execute it with:
$result = Flowpipe::fromYaml('user-registration')
->send(['name' => 'Jane', 'email' => '[email protected]'])
->execute();
Laravel Flowpipe is built for developers who want to create maintainable, scalable workflows without sacrificing code quality or Laravel conventions.
Laravel Flowpipe - YAML-driven workflow engine for Laravel
GitHub: Laravel Flowpipe Repository | Support: GitHub Issues
Quick Navigation: Home β’ Installation β’ Configuration β’ Commands β’ Examples
π§ Developed by Grazulex