State Machines

Finite state machine libraries and DSLs

machinery

9.8

Machinery is a State Machine library for structs in general. It supports guard clauses, callbacks and integrate out of the box with Phoenix apps.

564 26.9K/wk v1.1.0 3y ago 2y ago

machinery

9.8
Machinery is a State Machine library for structs in general. It supports guard clauses, callbacks and integrate out of the box with Phoenix apps.
machinery state-machine phoenix elixir elixir-lang state-management statemachine ecto state machine dashboard
Popularity
564 ★
53 forks · 9 watching
Activity
8 issues
4 open PRs · 45 merged
Downloads
26,921/wk
442 yesterday · 761.0K total
Release
v1.1.0
April 04, 2023

fsm

6.2

Finite state machine as a functional data structure.

363 116.4K/wk v0.3.1 6y ago 6y ago

fsm

6.2
Finite state machine as a functional data structure.
Popularity
363 ★
25 forks · 8 watching
Activity
0 issues
0 open PRs · 5 merged
Downloads
116,364/wk
1,587 yesterday · 2.4M total
Release
v0.3.1
August 05, 2019

gearbox

3.3

Gearbox is a functional state machine with an easy-to-use API, inspired by both Fsm and Machinery

195 10.6K/wk v0.3.5 1y ago 1y ago

gearbox

3.3
Gearbox is a functional state machine with an easy-to-use API, inspired by both Fsm and Machinery
elixir state-machine gearbox state-transitions
Popularity
195 ★
12 forks · 5 watching
Activity
4 issues
1 open PRs · 12 merged
Downloads
10,562/wk
137 yesterday · 232.3K total
Release
v0.3.5
September 22, 2024

states_language

2.5

Declaratively design state machines that compile to Elixir based :gen_statem processes with the StatesLanguage JSON specification

127 341/wk v0.4.0 1y ago 1y ago

states_language

2.5
Declaratively design state machines that compile to Elixir based :gen_statem processes with the StatesLanguage JSON specification
Popularity
127 ★
10 forks · 22 watching
Activity
0 issues
1 open PRs · 5 merged
Downloads
341/wk
6 yesterday · 10.1K total
Release
v0.4.0
January 05, 2025

finitomata

Recently Committed Recently Released
2.1

The FSM implementation generated from PlantUML textual representation.

123 7.3K/wk v0.41.0 19d ago 19d ago

finitomata

Recently Committed Recently Released
2.1
The FSM implementation generated from PlantUML textual representation.
elixir fsm fsm-library finite-state-machine state-machine state-management
Popularity
123 ★
11 forks · 2 watching
Activity
7 issues
0 open PRs · 34 merged
Downloads
7,347/wk
61 yesterday · 81.5K total
Release
v0.41.0
June 15, 2026

machinist

1.9

A small Elixir lib to write state machines

107 275/wk v2.1.2 3y ago 3y ago

machinist

1.9
A small Elixir lib to write state machines
state-machine elixir elixir-lang machinist
Popularity
107 ★
11 forks · 1 watching
Activity
2 issues
0 open PRs · 16 merged
Downloads
275/wk
7 yesterday · 29.2K total
Release
v2.1.2
April 12, 2023

gen_fsm

0.7

Elixir wrapper around Erlang's OTP gen_fsm.

40 298/wk v0.1.0 10y ago 6y ago

gen_fsm

0.7
Elixir wrapper around Erlang's OTP gen_fsm.
Popularity
40 ★
3 forks · 2 watching
Activity
4 issues
1 open PRs · 6 merged
Downloads
298/wk
0 yesterday · 19.6K total
Release
v0.1.0
April 12, 2016

state_machine

0.4

State Machine implementation in Elixir. It's a structure and optionally a gen_statem powered process. It validates states and transitions for integrity and features seamless Ecto-integration.

23 531/wk v0.1.9 7mo ago 7mo ago

state_machine

0.4
State Machine implementation in Elixir. It's a structure and optionally a gen_statem powered process. It validates states and transitions for integrity and features seamless Ecto-integration.
Popularity
23 ★
3 forks · 0 watching
Activity
2 issues
2 open PRs · 1 merged
Downloads
531/wk
15 yesterday · 17.2K total
Release
v0.1.9
November 24, 2025

state_server

0.4

half gen_server, half gen_statem, all state machine

22 345/wk v0.4.10 6y ago 1y ago

state_server

0.4
half gen_server, half gen_statem, all state machine
Popularity
22 ★
2 forks · 1 watching
Activity
11 issues
0 open PRs · 19 merged
Downloads
345/wk
37 yesterday · 4.4K total
Release
v0.4.10
June 26, 2020

exfsm

0.3

Simple elixir library to define composable FSM as function (not related at all with `:gen_fsm`, no state/process management)

12 127/wk v0.1.6 9mo ago 9mo ago

exfsm

0.3
Simple elixir library to define composable FSM as function (not related at all with `:gen_fsm`, no state/process management)
fsm elixir transition
Popularity
12 ★
6 forks · 2 watching
Activity
2 issues
1 open PRs · 4 merged
Downloads
127/wk
8 yesterday · 5.3K total
Release
v0.1.6
September 16, 2025

as_fsm

0.3

An Finite state machine implementation for elixir

15 762/wk v2.0.1 4y ago 4y ago

as_fsm

0.3
An Finite state machine implementation for elixir
finite-state-machine fsm elixir
Popularity
15 ★
2 forks · 1 watching
Activity
1 issues
0 open PRs · 2 merged
Downloads
762/wk
7 yesterday · 20.0K total
Release
v2.0.1
July 30, 2021

maxine

0.2

State machines as data for Elixir

10 227/wk v1.1.1 3y ago 3y ago

maxine

0.2
State machines as data for Elixir
elixir state-machine
Popularity
10 ★
1 forks · 0 watching
Activity
2 issues
0 open PRs · 1 merged
Downloads
227/wk
6 yesterday · 8.5K total
Release
v1.1.1
January 10, 2023

exsm

0.1

Exsm is a State Machine library for structs.

5 7.8K/wk v0.3.2 5y ago 5y ago

exsm

0.1
Exsm is a State Machine library for structs.
elixir state-machine ecto phoenix
Popularity
5 ★
2 forks · 1 watching
Activity
0 issues
0 open PRs · 8 merged
Downloads
7,832/wk
84 yesterday · 77.2K total
Release
v0.3.2
November 03, 2020

aasm

0.1

The finite state machine implementations for Elixir.

5 25.0K/wk v0.2.0 7y ago 7y ago

aasm

0.1
The finite state machine implementations for Elixir.
ecto state-machine elixir elixir-lang hex
Popularity
5 ★
0 forks · 0 watching
Activity
0 issues
0 open PRs · 0 merged
Downloads
24,972/wk
4 yesterday · 87.8K total
Release
v0.2.0
June 10, 2019