Netflix Conductor alternative: node-flow vs Conductor
node-flow vs Netflix Conductor and Conductor OSS — the same JSON workflow model and a Conductor-compatible API, with Postgres as the only dependency.
node-flow is a Netflix Conductor alternative that keeps Conductor's model and
drops its infrastructure. Workflows are the same kind of JSON DAG, workers
still poll for SIMPLE tasks in any language, and a Conductor-shaped REST API
at /conductor/api lets supported Conductor clients connect with a base-URL
change. What goes away is the stack: node-flow runs on PostgreSQL alone.
Why people look for a Conductor alternative
- Netflix stopped maintaining Conductor. Netflix announced the end of its maintenance of the original repository in December 2023; the community fork continues as Conductor OSS, with Orkes as its main steward.
- The footprint. A production Conductor deployment is a JVM server plus separate queue, persistence and indexing backends — typically Redis and Elasticsearch or OpenSearch, alongside a database, depending on which modules you choose. Each is a system to size, patch, back up and page on.
- Node.js and TypeScript teams. Conductor is a Java/Spring application. If your team, tooling and on-call knowledge are Node, running and extending it is a context switch.
node-flow vs Conductor at a glance
| node-flow | Netflix Conductor / Conductor OSS | |
|---|---|---|
| Workflow model | JSON DAG | JSON DAG |
| Workers | Any language, HTTP long-poll | Any language, HTTP poll |
| Server | Node.js, one image with three roles (api, decider, poller) | Java / Spring Boot |
| Required infrastructure | PostgreSQL 18 only — state, queues, timers, outbox and search | Queue, persistence and index stores (commonly Redis + Elasticsearch/OpenSearch) |
| Conductor API | Compatible layer at /conductor/api for supported endpoints | Native |
| Side effects | Transactional outbox — no side effect escapes a transaction | Depends on the backend combination |
| Engine | Pure decide(blueprint, state) function; deterministic replay | Imperative decider service |
| Testing | @node-flow-dev/testkit runs a whole workflow in milliseconds, no server | Integration tests against a running server |
| Access control | Namespaces, RBAC, SSO (OIDC, SAML), API keys, service accounts, audit log | Minimal in OSS; richer in Orkes' commercial product |
| AI tasks | LLM, embeddings, vector search in Postgres, MCP, durable AGENT loop | Available in Orkes' product |
| Licence | Source available, free to run commercially | Apache 2.0 |
Migrating from Conductor
Because the model is the same, a migration is mostly configuration:
- Point your Conductor SDK's base URL at
https://your-host/conductor(or/conductor/api, depending on the SDK — see Conductor compatibility). - Create node-flow credentials for your publishers and workers. The credential selects the namespace.
- Register your existing workflow and task definitions. Supported task types
keep their names:
SIMPLE,SWITCH,FORK_JOIN,JOIN,DO_WHILE,SUB_WORKFLOW,HTTP,INLINE,JSON_JQ_TRANSFORM,WAIT,HUMAN,TERMINATEand more. - Run workers unchanged, then move them over one queue at a time.
The compatibility layer is not full Conductor or Orkes parity. Read Migration boundaries before switching a production fleet.
When to stay on Conductor
- You depend on a Conductor module, task type or SDK feature outside node-flow's compatibility surface.
- You need an OSI-approved licence. Conductor OSS is Apache 2.0; node-flow is source available.
- Your platform team already runs Conductor's backends well and the footprint is not a cost you feel.
Frequently asked questions
Is Netflix Conductor still maintained?
Netflix ended its own maintenance of the original Conductor repository in December 2023. Development continues in the community fork, Conductor OSS, and in Orkes’ commercial product. node-flow is an independent engine that implements the same model and a compatible API.
Can I use my existing Conductor SDK with node-flow?
Yes, for the supported workflow and worker endpoints. node-flow serves a Conductor-shaped REST API at /conductor/api; you change the base URL and use a node-flow credential. It is a compatibility layer, not full platform parity, so review the migration boundaries first.
Does node-flow need Redis or Elasticsearch like Conductor?
No. node-flow keeps workflow state, task queues, timers, the outbox and search in PostgreSQL 18. There is no Redis, Cassandra, Elasticsearch or Kafka to run.
Is node-flow a fork of Conductor?
No. node-flow is a separate implementation written in TypeScript for Node.js. It follows Conductor’s workflow model and speaks a compatible API, but shares no code with it.
Next
- Quickstart — a completed run in about a minute.
- Conductor compatibility — connection settings, credentials and boundaries.
- Orkes Conductor alternative.
Open-source workflow orchestrators compared
A practical guide to open-source and source-available workflow orchestration engines — Conductor OSS, Temporal, Airflow, Trigger.dev, Hatchet and node-flow — and how to choose.
Orkes Conductor alternative: node-flow vs Orkes
node-flow vs Orkes Conductor — a self-hosted, Conductor-compatible workflow engine with RBAC, SSO and AI tasks, free to run commercially on Postgres alone.
