Go library for creating finite state machines
-
Updated
Jan 17, 2025 - Go
A finite-state machine (FSM), finite-state automaton (FSA), or simply state machine is a mathematical model of computation and an abstract machine that can be in exactly one of a finite number of states at any given time.
The FSM can change from one state to another in response to some inputs; the change from one state to another is called a transition.
An FSM is defined by a list of its states, its initial state, and the inputs that trigger each transition.
In computer science, FSM are widely used in modeling of application behavior (control theory), design of hardware digital systems, software engineering, compilers, network protocols, and computational linguistics.
Go library for creating finite state machines
StateTrooper is a Go package that provides a finite state machine (FSM) for managing states. It allows you to define and enforce state transitions based on predefined rules.
A tech stack agnostic Event Driven Workflow framework, written in Go, that supports durable, robust, and idempotent state changes with timeouts, callbacks, scheduled triggers, and await calls. Compatible with Kafka and Reflex out of the box.
Declarative control flow library implementing AOP and Actor Model through a clock-based state machine
WS-Machine is a websocket finite state machine for client websocket connections (Go)
🚦 Declarative Finite-State Machines in Go
Open version of common golang libraries useful to many projects.
GoLang 2D RPG Game - hobby project
Package behaviortree provides a simple and powerful Go implementation of behavior trees without fluff.
Small finite-state machine library for Go
A toy deadlock detector written in Go. 🔍
A finite-state machine library for the Go programming language
Deprecated, renamed and maintained at https://github.com/coinbase/odin
A library of replicated state machine algorithms is based on Viewstamped Replication Revisited
Golang state machine
A simple interface for a finite-state machine
Amazon States Language parser&validator in go-language