I’ve been building [Pipeflow-php](https://github.com/marcosiino/pipeflow-php), a PHP pipeline engine to automate anything — from content generation to backend and business logic workflows — using core modular stages and custom implemented stages (that can do anything), with the key power of using an easy to reason and read XML to define the pipeline logic, which every actor in a company, even non developers, can understand, maintain and edit.
It’s a *headless engine*: no UI is included, but it's designed to be easily wired into any backend interface (e.g. WordPress admin, CMS dashboard, custom panels), so *even non-developers can edit or configure the logic*.
It surely needs improvements, more core stages to be implemented and more features, but i'm already using it on two websites i've developed.
In future I plan to port it in other languages too.
Feedback (and even contributions) are appreciated :)
---
Why I built it
I run a site which every day, via a cron job:
- automatically generates and publish coloring pages using complex logics and with the support of the generative AI,
- picks categories and prompts based on logic defined in a pipeline,
- creates and publishes WordPress posts automatically, every day, without any human intervention.
All the logic is defined in an XML pipeline that's editable via wordpress admin panel (using a wordpress plugin I've developed, which also adds some wordpress related custom stages to Pipeflow). A non-dev (like a content manager) can adjust this automatic content generation logic, for example by improving it, or by changing the themes/categories during holidays — without touching PHP.
---
What Pipeflow does
- Define pipelines in *fluent PHP* or *simple, easy understandable XML (even by non developers), directly from your web app admin pages*
- Use control-flow stages like `If`, `ForEach`, `For`
- Execute pipelines manually, via cron, or on any backend trigger which adapts to your business logic
- Build your own UI or editor on top (from a simple text editor to a node based editor which outputs a compatible XML-based configuration to feed to pipeflow)
- Reuse modular “stages” (core and custom ones) across different pipelines
crtasm•3h ago
pluc•3h ago