Awesome Open Source
Awesome Open Source


Build Status

Ruby >= 2.1 and JRuby are supported. Rubinius should work but isn't actively supported.


This library contains a rule engine written in Ruby. It's based on the Rete algorithm and uses a DSL to express rules in a readable way.

Word of caution: this is complex and fragile machinery, and there may be subtle bugs that are only revealed with nontrivial usage. Be conservative with upgrades, test your rules extensively, and please report any behaviour that is not consistent with your expectations.

Feature annoucements

Open discussions


The Rete implementation in this library largely follows the outline presented in [Doorenbos, 1995].


  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
ruby (12,338
rule-engine (23

Find Open Source By Browsing 7,000 Topics Across 59 Categories