Skip to content
This repository has been archived by the owner before Nov 9, 2022. It is now read-only.


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Gitter Build Status Stories in Ready


Please note: This project is stopped, no bugfixes, features, etc. are done.

Eventuate is a toolkit for building applications composed of event-driven and event-sourced services that communicate via causally ordered event streams. Services can either be co-located on a single node or distributed up to global scale. Services can also be replicated with causal consistency and remain available for writes during network partitions. Eventuate has a Java and Scala API, is written in Scala and built on top of Akka, a toolkit for building highly concurrent, distributed, and resilient message-driven applications on the JVM. Eventuate

  • provides abstractions for building stateful event-sourced services, persistent and in-memory query databases and event processing pipelines
  • enables services to communicate over a reliable and partition-tolerant event bus with causal event ordering and distribution up to global scale
  • supports stateful service replication with causal consistency and concurrent state updates with automated and interactive conflict resolution
  • provides implementations of operation-based CRDTs as specified in A comprehensive study of Convergent and Commutative Replicated Data Types
  • supports the development of always-on applications by allowing services to be distributed across multiple availability zones (locations)
  • supports the implementation of reliable business processes from event-driven and command-driven service interactions
  • supports the aggregation of events from distributed services for updating query databases
  • provides adapters to 3rd-party stream processing frameworks for analyzing event streams





Global-scale event sourcing and event collaboration with causal consistency (This project is in maintenance mode. Only critical bugs will be fixed, but there is no more feature development.).







No packages published