Distributed workflows made simple

Sterblue Synapses is a library enabling easy creation of complex workflows executed on distributed heterogeneous agents.

Why Sterblue Synapses?

The reasons why we built and share this tool.

Technology Agnostic

Sterblue Synapses relies on a pluggable and extendable set of connectors to decouple agents from communication systems.

Universal Workflows

Synapses supports workflows executed by human or automated agents, on a time scale from milliseconds to months.

Traceable

Executions status and details are tracked and can be visualized using Sterblue Superblock or any other front-end libraries.

20 Lines

To create a simple agent

5 Minutes

From develop to deploy

4

Supported platforms

How Sterblue Synapses works

Creating a workflow agent in a few lines of code.

1
.
Write

Write your business logic

Your business logic can be easily integrated to Sterblue Synapses by using the premade helpers.
1const doubleHandler = simpleExecutePlan({
2 inputActivityType: "doubleRequestCreated",
3 outputActivityType: "doublePerformed",
4 execute: (plan) => ({
5 result: plan.parameters.n * 2
6 })
7});
2
.
Define

Define your agent configuration

Defining your agent is made simple by using the premade connectors.
1const config = {
2 connector: await createRabbitConnector({
3 id: "doubler_service",
4 activityTypes: ["doubleRequestCreated"]
5 })
6 ),
7 handlers: [doubleHandler]
8};
9
3
.
Run

Run your agent

After defining your agent, everything you have to do is running it with a single function call.
1const instance = createSynapse(config);
2instance.run();

Open source workflow library

Sterblue Synapses is based on open source libraries to supports the complex communications and validations of your agents.