Hotel
A hotel group checkout example can be found on the project's github. Its main goal is to show how to implement a process manager in EquinoxJS by composing deciders, services and reactions.
This example matters because it demonstrates that EquinoxJS can handle the kind of cross-aggregate workflow many libraries solve by introducing a dedicated workflow abstraction. Here, the same result is achieved by composing the core primitives directly.
The example is intentionally interesting because it crosses aggregate
boundaries without introducing a separate workflow framework. The
GroupCheckout aggregate maintains process state, Flow.nextAction derives the
next step from that state, and the reactor host wakes the process up from the
store's change feed.
The README explains the operational considerations in detail, including how the reactor deals with feed lag and how the process manager composes with domain services.
Components
What It Demonstrates
- A process manager built from ordinary EquinoxJS primitives
- How folded aggregate state can be projected into a
Flowaction - How a reaction host drives cross-stream work from the store's change feed
- How to keep domain logic in services and deciders rather than transport or workflow infrastructure
- That the library's "not a framework" stance still covers real workflow use cases