Node Flowdocs

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-flowNetflix Conductor / Conductor OSS
Workflow modelJSON DAGJSON DAG
WorkersAny language, HTTP long-pollAny language, HTTP poll
ServerNode.js, one image with three roles (api, decider, poller)Java / Spring Boot
Required infrastructurePostgreSQL 18 only — state, queues, timers, outbox and searchQueue, persistence and index stores (commonly Redis + Elasticsearch/OpenSearch)
Conductor APICompatible layer at /conductor/api for supported endpointsNative
Side effectsTransactional outbox — no side effect escapes a transactionDepends on the backend combination
EnginePure decide(blueprint, state) function; deterministic replayImperative decider service
Testing@node-flow-dev/testkit runs a whole workflow in milliseconds, no serverIntegration tests against a running server
Access controlNamespaces, RBAC, SSO (OIDC, SAML), API keys, service accounts, audit logMinimal in OSS; richer in Orkes' commercial product
AI tasksLLM, embeddings, vector search in Postgres, MCP, durable AGENT loopAvailable in Orkes' product
LicenceSource available, free to run commerciallyApache 2.0

Migrating from Conductor

Because the model is the same, a migration is mostly configuration:

  1. Point your Conductor SDK's base URL at https://your-host/conductor (or /conductor/api, depending on the SDK — see Conductor compatibility).
  2. Create node-flow credentials for your publishers and workers. The credential selects the namespace.
  3. 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, TERMINATE and more.
  4. 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

On this page