GitHub - qmuntal/stateless: Go library for creating finite state machines
Stateless is a Go library for building finite state machines and lightweight state machine-based workflows. It is an idiomatic port of the .NET stateless library and supports hierarchical states, entry/exit events, guard clauses, parameterised triggers, reentrant states, external state storage, and DOT graph export. The library is thread-safe and supports any comparable type for states and triggers.