Getting started

Add to your build

libraryDependencies += "dev.hnaderi" %% "edomata-core" % "0.12.2"

or for scala.js

libraryDependencies += "dev.hnaderi" %%% "edomata-core" % "0.12.2"

Layers of abstraction

Before jumping in to code, we should know the big picture of what we are going to do;


application logic is divided into 2 separate layers:

Aggregate space


Currently these kinds of state machines are implemented in edomata:


That's all we need to know for now; talk is enough, let's jump into code!

for event sourced applications, follow this link,
for cqrs applications, follow this link