The Resonate Server acts as a supervisor and orchestrator for Resonate Workers — that is, it provides reliability and scalability to applications built with a Resonate SDK.
Why does this component exist?
Popular programming languages like Python and TypeScript are not designed with abstractions that address distribution. To provide those abstractions at the application level (i.e. to enable API-like abstractions that simplify the implementation of reliable process to process message passing) the system needs a service that acts as both an orchestrator of messages and a supervisor of the processes sending them.
The Resonate Server is a highly efficient single binary that pairs with a Resonate SDK to provide those APIs.
For more Resonate Server deployment information see the Set up and run a Resonate Server guide.
You can download and install the Resonate Server using Homebrew with the following commands:
brew install resonatehq/tap/resonateThis previous example installs the latest release. You can see all available releases and associated release artifacts on the releases page.
Once installed, you can start the server with:
resonate serveYou will see log output like the following:
time=2025-09-09T20:54:31.349-06:00 level=INFO msg="starting http server" addr=:8001
time=2025-09-09T20:54:31.349-06:00 level=INFO msg="starting poll server" addr=:8002
time=2025-09-09T20:54:31.349-06:00 level=INFO msg="starting grpc server" addr=:50051
time=2025-09-09T20:54:31.351-06:00 level=INFO msg="starting metrics server" addr=:9090The output indicates that the server has HTTP endpoints available at port 8001, a polling endpoint at port 8002, a gRPC endpoint at port 50051, and a metrics endpoint at port 9090.
These are the default ports and can be changed via configuration. The SDKs are all configured to use these defaults unless otherwise specified.
The Resonate Server repository contains a Dockerfile that you can use to build and run the server in a Docker container. You can also clone the repository and start the server using Docker Compose:
git clone https://github.com/resonatehq/resonate
cd resonate
docker-compose upIf you don't have Homebrew, we recommend building from source using Go. Run the following commands to download the repository and build the server:
git clone https://github.com/resonatehq/resonate
cd resonate
go build -o resonate
After it is built, you can compile and run it as a Go program using the following command:
go run main.go serve
Or, you can run it as an executable using the following command:
./resonate server