State Machines

State machine

Adds support for creating state machines for attributes on any Ruby class

Rubygem state_machine

Total Downloads
4690724
Releases
44
Current Version
1.2.0
Released
2013-03-30 00:00:00 UTC
First Release
2008-05-05 04:00:00 UTC

Github pluginaweek/state_machine

Watchers
2839
Forks
292
Development activity
Inactive
Last commit
2013-05-07 12:40:11 UTC

AASM

AASM is a continuation of the acts-as-state-machine rails plugin, built for plain Ruby objects.

Rubygem aasm

Total Downloads
1522327
Releases
64
Current Version
4.1.0
Released
2015-02-24 00:00:00 UTC
First Release
2008-04-29 07:00:00 UTC

Github aasm/aasm

Watchers
1753
Forks
281
Development activity
Active
Last commit
2015-03-24 10:04:23 UTC

Workflow

Workflow is a finite-state-machine-inspired API for modeling and interacting with what we tend to refer to as 'workflow'. * nice DSL to describe your states, events and transitions * robust integration with ActiveRecord and non relational data stores * various hooks for single transitions, entering state etc. * convenient access to the workflow specification: list states, possible events for particular state

Rubygem workflow

Total Downloads
305170
Releases
19
Current Version
1.2.0
Released
2014-10-20 00:00:00 UTC
First Release
2009-04-24 22:00:00 UTC

Github geekq/workflow

Watchers
1077
Forks
129
Development activity
Less active
Last commit
2015-02-12 14:54:33 UTC

Transitions

Lightweight state machine extracted from ActiveModel

Rubygem transitions

Total Downloads
187152
Releases
29
Current Version
0.2.0
Released
2014-12-06 00:00:00 UTC
First Release
2010-03-13 23:00:00 UTC
Depending Gems
6

Github troessner/transitions

Watchers
430
Forks
84
Development activity
Less active
Last commit
2014-12-11 15:54:26 UTC

Ruote

ruote is an open source Ruby workflow engine

Rubygem ruote

Total Downloads
48353
Releases
19
Current Version
2.3.0.3
Released
2013-11-20 00:00:00 UTC
First Release
2008-05-21 15:00:00 UTC

Github jmettraux/ruote

Watchers
490
Forks
75
Development activity
Inactive
Last commit
2014-03-01 00:38:50 UTC

micromachine

There are many finite state machine implementations for Ruby, and they all provide a nice DSL for declaring events, exceptions, callbacks, and all kinds of niceties in general. But if all you want is a finite state machine, look no further: this has less than 50 lines of code and provides everything a finite state machine must have, and nothing more.

Rubygem micromachine

Total Downloads
208144
Releases
13
Current Version
1.2.0
Released
2015-03-03 00:00:00 UTC
First Release
2009-03-07 02:00:00 UTC
Depends on following gems
Depending Gems
6

Github soveran/micromachine

Watchers
246
Forks
23
Development activity
Inactive
Last commit
2015-01-09 18:50:21 UTC
Contributors
7
Issues

stateflow

State machine that allows dynamic transitions for business workflows

Rubygem stateflow

Total Downloads
43732
Releases
16
Current Version
0.5.0.beta
Released
2011-04-07 22:00:00 UTC
First Release
2010-03-21 22:00:00 UTC
Depends on following gems
Depending Gems
2

Github ryanza/stateflow

Watchers
120
Forks
38
Development activity
Inactive
Last commit
2013-08-08 08:28:00 UTC
First commit

Rubygem simple_states

Total Downloads
63050
Releases
16
Current Version
1.0.1
Released
2014-01-23 00:00:00 UTC
First Release
2011-08-04 00:00:00 UTC
Depends on following gems
Depending Gems
1

Github svenfuchs/simple_states

Watchers
76
Forks
9
Development activity
Inactive
Last commit
2014-01-23 14:41:20 UTC

Alter-ego

AlterEgo is a Ruby implementation of the State pattern as described by the Gang of Four. It differs from other Ruby state machine libraries in that it focuses on providing polymorphic behavior based on object state. In effect, it makes it easy to give an object different personalities depending on the state it is in.

Rubygem alter-ego

Total Downloads
9215
Releases
2
Current Version
1.0.1
Released
2009-07-19 04:00:00 UTC
First Release
2008-11-28 05:00:00 UTC
Depends on following gems
Depending Gems
4

Github avdi/alter-ego

Watchers
55
Forks
7
Development activity
Inactive
Last commit
2012-07-02 04:48:47 UTC
Top contributors
Contributors
4
Issues

simple_state_machine

A simple DSL to decorate existing methods with state transition guards.

Rubygem simple_state_machine

Total Downloads
24166
Releases
20
Current Version
0.6.0
Released
2011-11-17 23:00:00 UTC
First Release
2010-06-27 22:00:00 UTC
Depends on following gems
Depending Gems
0

Github mdh/ssm

Watchers
29
Forks
5
Development activity
Inactive
Last commit
2014-10-01 10:50:13 UTC
Top contributors
p8, mdh, and redmar
Contributors
3
Issues

State-fu

A rich library for state-oriented programming with state machines / workflows

Rubygem state-fu

Total Downloads
11378
Releases
8
Current Version
0.13.5
Released
2010-01-07 13:00:00 UTC
First Release
2009-08-25 17:00:00 UTC
Depends on following gems
Depending Gems
0

Github davidlee/state-fu

Watchers
35
Forks
1
Development activity
Inactive
Last commit
2012-06-28 01:18:11 UTC
Top contributors
Contributors
1
Issues
Wiki pages

golem_statemachine

Adds finite state machine behaviour to Ruby classes. Meant as an alternative to acts_as_state_machine/AASM.

Rubygem golem_statemachine

Total Downloads
3258
Releases
3
Current Version
1.1.0.pre2
Released
2012-02-13 05:00:00 UTC
First Release
2011-04-28 00:00:00 UTC
Depends on following gems
Depending Gems
0

Github zuk/golem_statemachine

Watchers
9
Forks
1
Development activity
Inactive
Last commit
2012-05-25 19:31:44 UTC
First commit
Top contributors
Contributors
1
Issues

state_objects

'State' Design Pattern from the Gang of Four book. Many other state machines focus on events and transitions. This state machine focuses on behavior and reducing conditional logic.

Rubygem state_objects

Total Downloads
5493
Releases
8
Current Version
0.9.1
Released
2014-12-17 00:00:00 UTC
First Release
2012-10-25 00:00:00 UTC
Depends on following gems
Depending Gems
0

Github mwindholtz/state_objects

Watchers
11
Forks
0
Development activity
Inactive
Last commit
2014-12-17 17:20:09 UTC
First commit
Top contributors
Contributors
1
Issues

status-manager

ActiveRecord Model Status Manager

Rubygem status-manager

Total Downloads
4450
Releases
9
Current Version
0.9.0
Released
2014-12-29 00:00:00 UTC
First Release
2013-07-15 00:00:00 UTC
Depends on following gems
Depending Gems
0

Github keepcosmos/status-manager

Watchers
7
Forks
1
Development activity
Less active
Last commit
2015-03-01 13:56:21 UTC
First commit
Top contributors
Contributors
1
Issues

Stamina

Stamina is an automaton and regular inference toolkit initially developped for the baseline of the Stamina Competition (stamina.chefbe.net).

Rubygem stamina

Total Downloads
10162
Releases
10
Current Version
0.6.1
Released
2012-10-16 00:00:00 UTC
First Release
2011-03-23 23:00:00 UTC
Depends on following gems
Depending Gems
0

Github blambeau/stamina

Watchers
4
Forks
0
Development activity
Inactive
Last commit
2012-10-16 07:18:42 UTC
Top contributors
Contributors
1
Issues
×

In order to continue, you must be signed in using your Github account.

If you're signing in using this account for the first time Github will ask for your permission to give access to your public user data to the Ruby Toolbox.

Although the Github Authorization page does not mention it, the request includes read-only access to your verified email address (user:email OAuth scope). This is neccessary so there's a way to notify you about comments, information about your accepted project edits and the like. You can review your notification settings on your account page once you're signed in.