packstub/filament-flow
Filament Flow is a Laravel Filament package for defining and managing multi-step workflows directly in your admin panel. Build, visualize, and track flows for approvals, pipelines, and status-driven records in a clean, integrated UI.
Architecture fit
packstub/filament-flow is a Filament panel plugin, not a standalone workflow service. The value proposition collapses to zero if the automation surface does not belong inside an existing Filament v4/v5 admin. For teams already standardized on Filament, it is a native-shaped addition: a WorkflowResource, a RunsRelationManager on the workflow, the graph editor as a custom FlowBuilder field, and node configuration in a ManageNode slide-over. Nothing enters the stack that a Filament developer does not already recognize.src/Engine/ splits Dispatcher, Graph, and Runner; src/Nodes/ exposes Trigger/Action/Condition base classes plus built-ins. That means domain automations can be created programmatically and extended with custom node classes without touching the canvas — the leverage point for making this feel like our product rather than a plugin.Http/Controllers/WebhookController gives external entry, config/packstub-flow.php and a publishable database/migrations/create_flow_tables.php.stub mean config and schema are host-owned.Integration feasibility
composer require, publish config + migration stub, migrate, register the plugin on the panel, php artisan filament:assets. The frontend ships prebuilt (resources/dist/flow.js, flow.css registered via FilamentAsset), so consuming teams need no bun/Vite/Tailwind toolchain unless they fork the canvas — a real advantage in locked-down CI.packstub/agents dev dependency (PHP 8.4) unlocks a real Ask AI node in the workbench. Treat that as a separate build-vs-buy and cost decision (per-invocation model spend, data egress), not a free feature.Technical risk
packstub) shipping a product family. No third-party production references to borrow confidence from, no stated commercial support, MIT license means fork is the fallback.@xyflow/svelte + Tailwind v4 + Vite, with build artifacts committed to the repo. Tailwind v4 inside a Filament panel is a known class of styling-collision risk, and v1.6.1's own upgrade note ("rebuild the stylesheet; run php artisan filament:assets") shows asset staleness is a recurring operational step rather than a one-off.Key questions
Stack fit
Migration path
Compatibility
CHANGELOG.md on each bump — the project's convention is a changelog line per change, which makes this cheap.svelte-check, and vitest as part of your build and release process. Make the fork decision explicitly, not by accident.Sequencing
workflows queue, per-job timeouts, failed-job alerting, a run-retention job, and a written rule that every action must be idempotent or compensable.Maintenance
svelte-check, vitest, Playwright e2e against testbench, and a stated convention that every change ships a test and a CHANGELOG.md line. v1.6.1 is a clean patch with explicitly "nothing to do" upgrade notes. That discipline lowers silent-breakage odds but does not remove bus factor.php artisan filament:assets after any plugin asset change, and committed resources/dist artifacts that must be rebuilt and committed if we fork.Support
docs/ with screenshots). resources/lang/en/flow.php centralizes every UI string, node name, and description, which makes localization and copy review cheap — but also means UI copy is a package-level concern, not an admin-panel setting. Copy changes ride the upgrade cycle.Scaling
Failure modes
workflows queue.Ramp-up
How can I help you explore Laravel packages today?