GoAkt - Distributed Actor framework for Go
Distributed Actor framework for Go

build Go Reference codecov GitHub go.mod Go version Latest Release License CLA Awesome Open Source AI Manifesto Join our Slack OpenSSF Best Practices

GoAkt is a distributed actor framework for Go that lets you build reactive systems with typed messages. It runs as a single process or a cluster of nodes behind the same API, and ships with the primitives (supervision, remoting, clustering, CRDTs, streams, observability) needed to put actor systems into production without re-rolling them yourself.

New to the actor model? Brian Storti's short introduction is a good starting point; the references at the end of that post go deeper.

Features

Core

Routing

Scheduling

Cluster

CRDTs & Streams

Observability

Extensibility

See Documentation for the full feature reference.

Installation

go get github.com/tochemey/goakt/v4

Examples

See the examples repository for runnable code covering local, remote, and clustered actor systems.

Architecture

Architecture documents: Architecture.

Benchmark

Benchmark suite: Benchmark.

Support

GoAkt is free and open source. If you need priority support on complex topics or request new features, please consider sponsorship.

Security

Applications using this library should routinely upgrade their Go version and refresh dependencies as needed to mitigate security vulnerabilities. GoAkt will make a best effort to keep dependencies current and perform vulnerability checks whenever necessary.

Community

You can join these groups and chat to discuss and ask GoAkt related questions on:

GitHub Discussions GitHub Issues or Pull Requests Slack

Contribution

We welcome contributions: bug fixes, new features, and documentation improvements. Before diving in, read the Architecture Document to understand the codebase. We use Conventional Commits and a Docker-backed Makefile so contributors only need Docker and Make installed; run make help to see the available targets.

See contributing.md for prerequisites, setup, and the full contribution workflow.

In Production

This framework is used in production by the following projects/companies:

Sponsors

User avatar: Andrew Brown

Feedback

Share feedback on this tracking issue; it helps shape what we work on next.