Every change in state is captured as an event object
A system of record : the event store as the source of truth
Pub / Sub : Events are published by the store and consumed / processed by subscribers
Time travelling : the history of events can be played at anytime
Application state can be stored using snapshots