Birdβs eye view
GoAkt is a framework for building concurrent, distributed, and fault-tolerant systems in Go using the actor model. Every unit of computation is an actorβa lightweight, isolated entity that communicates exclusively through messages. The Actor System is the top-level runtime that hosts actors and orchestrates messaging, clustering, and lifecycle.Three deployment modes
| Mode | Description |
|---|---|
| Standalone | Single process. Actors communicate in-process. |
| Clustered | Multiple nodes. Discovery via Consul, etcd, Kubernetes, NATS, mDNS, or static. Location-transparent actors. |
| Multi-Datacenter | Multiple clusters across DCs. Pluggable control plane (NATS JetStream or etcd). DC-aware placement. |
Core building blocks
| Concept | Role |
|---|---|
| Reactive stream | Composable stream.Source β Flow stages β Sink pipelines, materialized with RunnableGraph.Run on an ActorSystem. Stages run as actors with demand-driven backpressure. See Streams. |
| CRDT / Replicator | Conflict-free replicated data types (crdt package), merged by a per-node Replicator system actor. Replication is eventually consistentβseparate from the Olric actor/grain registry (quorum-strong). See Distributed data. |
Message flow

Actor hierarchy

Cluster architecture

ClusterConfig.WithCRDT) is replicated separately by the Replicator actor using delta broadcast over the topic busβnot through Olric DMap writes.
See Code Map for package layout and Distributed data for CRDT behaviour.