An opinionated implementation of Event Modeling patterns in Java. Feature sliced software, Event Sources and modularized in feature slices.
The goal is to have a very lightweight implementation of all core techniques.
Supports the 4 EM core templates:
- State change (Trigger -> Command -> Event)
- State read (Events -> ReadModel -> UI/API
- Automation (Events -> TODOList -> Processor -> Command -> Event)
- Translation (External Event -> Processor -> Command -> Event)
And some utility facilities:
- Dispatcher (Outbound Event outbox pattern)
Step-by-step introduction with the quickstart guide
- Choosing a read model — which of the read model kinds to reach for, in the order to reach for them, and what each step costs. Start here before optimising a read: the cheapest fix is usually a step you have not taken yet rather than the one below it.
Please see CONTRIBUTING.md for guidelines.
This project is licensed under the LGPL-3.0 License - see the LICENSE file for details. External components on which this project depends are listed in the NOTICE file.