3 ms·
I’m tinkering on pgflow – an open-source, DAG-based workflow engine that uses Postgres to orchestrate workers on top of PGMQ queues. It seamlessly integrates wi
by jumski 1y ago
I’m tinkering on pgflow – an open-source, DAG-based workflow engine that uses Postgres to orchestrate workers on top of PGMQ queues. It seamlessly integrates with Supabase (no new infra needed!) and executes code on Edge Functions using custom, serverless task queue worker. All the current and past state of all executions is stored in Postgres and can be queries with simple SELECTs and flows can be started from within the db (think: pg_cron, triggers).
I have strong focus on db consistency and Type safety between steps.
### Built so far
– core SQL orchestration (state machine, retries, observability, queue management)
– strictly typed TypeScript DSL + compiler that turns flow definitions into migrations
– a minimal Edge Function worker that polls, executes and reports back
### Current focus
I’m heads-down on a dedicated client library. It leverages Supabase Realtime to stream events and progress of each flow run back to the browser,
while having strict compile-time safety for flows defined with the TypeScript DSL.
### Next on the roadmap
- Fanouts for processing arrays of data in parallel, with per-item retry logic.
- SQL-based conditionals/branching that leverages JSONB containment operator and step outputs
Docs: https://www.pgflow.dev/concepts/how-pgflow-works/ https://www.pgflow.dev/concepts/how-pgflow-works/
Repo: https://github.com/pgflow-dev/pgflow https://github.com/pgflow-dev/pgflow