# Simple Submit Rules plugin
Gerrit plugin to provide simple submit rules and a rest API to configure them.

By *simple*, we mean any rule that can be described in one sentence.
Or fits in a tweet.

Having a set of simple rules makes **composition** easier, thus allowing harder
rules to be defined ... in a simple way :)

Of course, this plugin can't contain all the simple rules one can think of,
and will only contain rules that seem popular or interesting to have.
