PHPackages                             aftandilmmd/laravel-workflow-automation - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. aftandilmmd/laravel-workflow-automation

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

aftandilmmd/laravel-workflow-automation
=======================================

Graph-based workflow automation engine for Laravel — triggers, conditions, actions, loops, and more.

v0.1.6(2mo ago)73MITPHPPHP ^8.3

Since Mar 4Pushed 2mo ago1 watchersCompare

[ Source](https://github.com/aftandilmmd/laravel-workflow-automation)[ Packagist](https://packagist.org/packages/aftandilmmd/laravel-workflow-automation)[ RSS](/packages/aftandilmmd-laravel-workflow-automation/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (9)Dependencies (27)Versions (19)Used By (0)

Laravel Workflow Automation
===========================

[](#laravel-workflow-automation)

Warning

This package is under active development and is not yet recommended for production use. APIs, database schemas, and features may change.

> English | **[Türkçe](README.tr.md)**

Define multi-step business logic as visual, configurable graphs — then let Laravel execute them. Instead of scattering if/else chains, queue jobs, and event listeners across your codebase, you describe the entire flow once: trigger, conditions, actions, loops, delays. The engine handles execution, retries, logging, and human-in-the-loop pauses. Think N8N, but as a Laravel package you own and extend.

**[Full Documentation](https://laravel-workflow.pilyus.com)**

[![Workflow Editor](screenshots/ai-workflow.png)](screenshots/ai-workflow.png)

Installation
------------

[](#installation)

```
composer require aftandilmmd/laravel-workflow-automation
php artisan vendor:publish --tag=workflow-automation-config --tag=workflow-automation-migrations
php artisan migrate
```

Quick Start
-----------

[](#quick-start)

When a user registers, send a welcome email:

```
use Aftandilmmd\WorkflowAutomation\Models\Workflow;

$workflow = Workflow::create(['name' => 'Welcome Email']);

$trigger = $workflow->addNode('User Created', 'model_event', [
    'model'  => 'App\\Models\\User',
    'events' => ['created'],
]);

$email = $workflow->addNode('Send Welcome', 'send_mail', [
    'to'      => '{{ item.email }}',
    'subject' => 'Welcome, {{ item.name }}!',
    'body'    => 'Thanks for signing up.',
]);

$trigger->connect($email);
$workflow->activate();
```

Every `User::create()` call now triggers the workflow automatically.

Features
--------

[](#features)

**Visual Editor** — Drag-and-drop workflow builder with React Flow canvas. Add nodes, connect ports, configure forms, execute and monitor — all from `/workflow-editor`.

**26 Built-in Nodes** — Triggers, actions, conditions, loops, delays, AI, and more. Connect them like building blocks to handle common automation scenarios without writing code.

**Expression Engine** — Use `{{ item.email }}`, arithmetic, ternary, and 30+ built-in functions in any config field. Custom recursive descent parser — no `eval()`.

**5 Trigger Types** — Start workflows manually, on Eloquent model events, Laravel events, incoming webhooks, or cron schedules.

**Human-in-the-Loop** — Pause a running workflow and wait for external approval. Resume via code or REST API with arbitrary payload data.

**Retry &amp; Replay** — Re-run failed workflows from the exact point of failure, replay completed runs with original payload, or retry individual nodes.

**Custom Nodes** — One PHP class with `#[AsWorkflowNode]` attribute. Define input/output ports, config schema, and execution logic — the engine handles the rest.

**Plugin System** — Bundle custom nodes, middleware, and event listeners into reusable plugins. Share across projects or publish as Composer packages.

**Full REST API** — Create, edit, run, and monitor workflows from any frontend, dashboard, or AI agent. Complete CRUD, execution, and registry endpoints.

**Full Observability** — Every run is recorded with per-node input/output, duration, and errors. Trace failures, debug responses, replay any run.

Testing
-------

[](#testing)

```
composer test
```

License
-------

[](#license)

MIT

###  Health Score

40

—

FairBetter than 88% of packages

Maintenance88

Actively maintained with recent releases

Popularity10

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~1 days

Total

9

Last Release

61d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/630ea45c41a7b5c54294a46920d0036cf0693865c7d3254c445b6cc08670edd0?d=identicon)[aftandilmmd](/maintainers/aftandilmmd)

---

Top Contributors

[![aftandilmmd](https://avatars.githubusercontent.com/u/26919900?v=4)](https://github.com/aftandilmmd "aftandilmmd (109 commits)")

---

Tags

laravelautomationworkflowgraphengineorchestration

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/aftandilmmd-laravel-workflow-automation/health.svg)

```
[![Health](https://phpackages.com/badges/aftandilmmd-laravel-workflow-automation/health.svg)](https://phpackages.com/packages/aftandilmmd-laravel-workflow-automation)
```

###  Alternatives

[yajra/laravel-datatables-oracle

jQuery DataTables API for Laravel

4.9k33.8M339](/packages/yajra-laravel-datatables-oracle)[laravel/pulse

Laravel Pulse is a real-time application performance monitoring tool and dashboard for your Laravel application.

1.7k12.1M99](/packages/laravel-pulse)[psalm/plugin-laravel

Psalm plugin for Laravel

3274.9M308](/packages/psalm-plugin-laravel)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9682.1M97](/packages/roots-acorn)[spatie/laravel-enum

Laravel Enum support

3655.4M31](/packages/spatie-laravel-enum)[laragear/preload

Effortlessly make a Preload script for your Laravel application.

119363.5k](/packages/laragear-preload)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
