Projects / Ruote


Ruote is a workflow engine. It's a runtime for long running business processes. Processes are explicitly defined and may be explicitly handled (start, pause, cancel, update). A process is started by handing a business process definition to the engine. A process definition is expressed in ruote’s own process definition language, which comes in three flavours: XML, a Ruby DSL, and Radial. A process definition describes the flow of work among participants. A ruote engine can simultaneously handle multiple process instances, created from one or more different process definitions. A process instance can be modified on the fly.


Recent releases

  •  22 Nov 2012 01:29

    Release Notes: Many improvements and new features. Backward compatibility is preserved. Participants get a new "on_apply" hook. Expressions accept a new "timer" attribute and a "flanking" concept is introduced for parallel branches of execution.

    •  18 Mar 2009 06:17

      Release Notes: Tokyo Cabinet/Tyrant and DataMapper persistence was added. Lots of improvements were made.

      •  09 Sep 2008 14:30

        Release Notes: Major enhancements were made for the workflow engine itself and for its packages ruote-web and ruote-rest. A Web based process designer named ruote-fluo was introduced.

        •  22 May 2008 10:51

          Release Notes: The gem name has changed from "openwferu" to "ruote". The source code has moved from Rubyforge to GitHub. New "step" expressions were added for state-transitions based process definitions.

          •  17 Mar 2008 12:51

            Release Notes: Lots of simplifications (and bugfixes) were made in the engine itself. The demo Web application has improved a lot. The state of business processes is visible as "tags".


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.