Rulette : Pragmatic Business Rule Management

Much of running a business is defining rules about how it runs, and much of software engineering is about codification of these business rules in programming terms, using them to drive business workflows, and keeping up with the constant changes to them

Rulette is a lightweight and powerful business rule management system (BRMS) that takes the drudgery out of this process. 

See it
Get the

If you find yourself modelling excel sheets with many column mapping to one column as output, or dealing with a large set of "IF something AND something AND something..., THEN some output" type of code, Rulette can take you from requirements to code complete in only a few lines of Java and SQL.




The Rulette way of modelling rules is very closely aligned with the columnar way in which we  think about rules. This makes it easy to bridge the gap between the rule and its technical expression. More alignment, less confusion.. Read More.

Talks and Presentations


Latest News


  • Rule tte stable version: 1.3.4 (Release Notes)

  • Rulette server version : 0.0.1-SNAPSHOT

  • Case study on evolving rule systems



Rulette offers some simple but powerful constructs to define rules. Default and customs data types, out of the box support for ranges, an SDK and a server mode all come together to make a versatile tool.



Rulette is very, very performant both in terms of storing rules as well as loading them to make decisions. Tens of thousands of rules can easily be loaded into memory and evaluated using blazing fast algorithms.

Support Rulette


Spread the word, contribute code/docs, or use you wallet!


Rulette SDK

The Java SDK is the simplest way to get started with using Rulette. Just add a few dependencies. to your system, and you are ready to start modelling and enforcing your business rules. The SDK also offers plug-and-play mechanism to integrate with existing business rules stored anywhere and the flexibility to create your own abstractions for modelling.


Check out the code and the ongoing action on Github. Join in!


Documentation for using Rulette to build powerful applications


Read more articles about Rulette design, how-to, and case-studies

Rulette Server

If you do not have a Java application but have rules to manage, there is still hope. Rulette server exposes a REST API and UI over your Rulette based data set! Set up the rulette database as usual (MySQL only for now), point the server configuration to the database, and fire it up - you are ready to go! Access and manage your ruleset over the API or UI, create new rule systems, or evaluate different scenarios of inputs.


Rulette server is the perfect tool to collaborate with business teams around rule management.


Rulette server is open-source on Github. Join the community and chip in!


If Docker is your thing, you can pull the latest image from Docker Hub to get started.

API Docs

Check out REST API documentation published on Swagger hub

Live Demo

Take Rulette server for a spin on a live instance. Experience the power first-hand

Let me bring this to your inbox! Subscribe to new posts.