State Machines

State machine

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

Rubygem state_machine

Total Downloads
3497752
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
2640
Forks
244
Development activity
Less active
Last commit
2013-05-07 12:40:11 UTC
Contributors
22
Issues
Wiki pages

AASM

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

Rubygem aasm

Total Downloads
1015078
Releases
47
Current Version
3.1.1
Released
2014-03-01 00:00:00 UTC
First Release
2008-04-29 07:00:00 UTC

Github aasm/aasm

Watchers
1245
Forks
207
Development activity
Less active
Last commit
2014-02-05 20:09:03 UTC
Contributors
50
Issues
Wiki pages

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
199510
Releases
18
Current Version
1.1.0
Released
2014-01-14 00:00:00 UTC
First Release
2009-04-24 22:00:00 UTC

Github geekq/workflow

Watchers
812
Forks
91
Development activity
Less active
Last commit
2014-02-14 08:28:37 UTC
Contributors
24
Issues
Wiki pages

Transitions

Lightweight state machine extracted from ActiveModel

Rubygem transitions

Total Downloads
146430
Releases
27
Current Version
0.1.12
Released
2013-11-30 00:00:00 UTC
First Release
2010-03-13 23:00:00 UTC
Depending Gems
6

Github troessner/transitions

Watchers
363
Forks
77
Development activity
Less active
Last commit
2014-03-16 16:56:52 UTC

Ruote

ruote is an open source Ruby workflow engine

Rubygem ruote

Total Downloads
39578
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
472
Forks
73
Development activity
Less active
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
82087
Releases
12
Current Version
1.1.0
Released
2013-08-08 00:00:00 UTC
First Release
2009-03-07 02:00:00 UTC
Depends on following gems
Depending Gems
5

Github soveran/micromachine

Watchers
199
Forks
16
Development activity
Inactive
Last commit
2013-08-08 00:01:04 UTC
Top contributors
Contributors
4
Issues

stateflow

State machine that allows dynamic transitions for business workflows

Rubygem stateflow

Total Downloads
37880
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
113
Forks
37
Development activity
Inactive
Last commit
2013-08-08 08:28:00 UTC
First commit

Rubygem simple_states

Total Downloads
44416
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
61
Forks
8
Development activity
Less active
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
8142
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
3

Github avdi/alter-ego

Watchers
50
Forks
8
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
19327
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
27
Forks
5
Development activity
Inactive
Last commit
2014-01-21 18:11:58 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
9417
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

status-manager

ActiveRecord Model Status Manager, It provides easy ways for managing ActiveModels that have many statuses.

Rubygem status-manager

Total Downloads
1752
Releases
6
Current Version
0.8.1
Released
2013-12-21 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
6
Forks
2
Development activity
Less active
Last commit
2013-12-26 12:00:23 UTC
First commit
Top contributors
Contributors
1
Issues

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
2448
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
Wiki pages

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
7713
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.