Build with confidence.Resonate.

Develop reliable and scalable agentic systems.background jobs.

But, without stressing over function retries.crash recovery.

By developers, for developers.

Leave retries, crash recovery, idempotency guarantees, service discovery, load balancing, suspension, etc.. to Resonate .

Focus on your product.

ResonateEcho APIs are the quality-of-life improvement developers have been yearning for.

The path to reliable and scalable applications.

Whether it's a greenfield project, an existing codebase, or just an exploration — Using Resonate is delightful every step of the way.

built for builders
Under 5 min quickstart

Develop zero-dependency local workers

Spin up your first worker with zero extra services (No Resonate Server required). Keep local development dependency-free while you explore the APIs.

POC with a Resonate Dev Server

Use a local Resonate Server to enable reliability and scalability features.

Eable Durable workers

Enable your workers to survive restarts and crashes simply by connecting to the server.

Make Async RPCs

Call functions in other services as easily as local functions, synchronously or asynchronously.

Pluggable transports

BYO transport

Use Resonate's defaults or swap in your own message transport layer, such as Kafka, RabbitMQ, or AWS SQS.

Long-running on FaaS

Go serverless

Deploy your Resonate workers in serverless environments like AWS Lambda or Google Cloud Functions for automatic scaling and reduced operational overhead.

Real-world needs

Harden for production

Make use of out-of-the-box observability, privacy, and security tools and features for production-level deployments.

Fully decentralized

Scale limitlessly

Deploy as many Resonate Servers as your application needs. Both workers and servers can be added or removed dynamically to match demand.

Complex problems. Simple code.

Async/await — across services, agents, and humans.
Durable execution (retries and recovery) baked in.
Currently available in Python and TypeScript.
Dead simple, formally verified, and deterministically tested.
Highly configurable and extensible (serverless, transports, etc.).

Open source, open standards

Implements the open Distributed Async Await spec and the Async RPC protocol so discovery, load balancing, and recovery are transparent.

Resonate's APIs

A delightful set of asynchronous APIs that empower developers, not constrain them.

Painless human-in-the-loop

Suspend a workflow for minutes or months while you wait for a human (or agent) to weigh in, then resume exactly where you left off.

src/worker.py
from resonate import Resonate
from threading import Event

resonate = Resonate.remote(host="http://localhost", group="worker")


def send_email(_, promise_id):
    """
    simulates sending an email by printing a message to the terminal
    """
    email_content = f"to unblock the workflow, click the link below:\n http://localhost:5001/unblock-workflow?promise_id={promise_id}"
    print(email_content)


@resonate.register()
def foo(ctx, workflow_id):
    blocking_promise = yield ctx.promise()
    yield ctx.lfc(send_email, blocking_promise.id)
    print(f"workflow {workflow_id} blocked, waiting on human interaction")
    # wait for the promise to be resolved
    yield blocking_promise
    print(f"workflow {workflow_id} unblocked, promise resolved")
    return {"message": f"workflow {workflow_id} completed"}


def main() -> None:
    resonate.start()
    print("worker running")
    Event().wait()


if __name__ == "__main__":
    main()

Join the community.

Connect with the engineers building resilient systems today. Share feedback, see what's shipping next, and learn how teams are scaling with Resonate in production.

Latest from the Resonate HQ Journal

Deep dives, release notes, and field reports from the team.

Read all posts
  • Loading the latest posts…

Jump into the Discord

Share ideas, swap implementation patterns, and hang out with engineers shipping Resonate in production.

Active right now

Check in for live threads and real-time support

Add a star to follow along

Stars help us reach more developers and signal which SDKs matter most. Plus, you'll stay in the loop as we ship new features.

View GitHub org

AI developer support

Provided by Kapa.ai, the leading AI developer support system, helps helps you ship faster with Resonate.

Ask AI anything about the SDKs or runtime…