$npx skillfedfor your agent

business-rules

Python DSL for setting up business intelligence rules that can be configured without code

With conditionsPyPI Software DevelopmentReleased Mar 2022180.0K downloads / moMITPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — business_rules-1.1.1-py2.py3-none-any.whl
v1.1.1 · released 2022-03-18 · Python >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.* · 1 runtime deps: six

Yes, if you need a lightweight rules engine for non-developers to configure business logic without code changes. The package is stable (no known vulnerabilities, low install friction, permissive license) but dormant—last release was 2022-03-18. It works well for straightforward condition-action rules; evaluate whether its feature set and Python version support align with your project before committing to long-term use.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Low friction install with a single runtime dependency (six).
  • Maintenance is dormant—last release was 2022-03-18—but the repository remains active with recent commits and 991 stars, suggesting the package is stable rather than abandoned.

License · maintenance · safety

MIT (permissive) — MIT license (permissive) means you can use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.

last release 2022-03-18 (1610 days) · last repo commit 2024-08-13 · 991 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 179,966 downloads/mo, #10,157 on PyPI

Verify before relying

pip install business-rules

from business_rules import run_all
from business_rules.variables import BaseVariables, numeric_rule_variable
from business_rules.actions import BaseActions, rule_action

class MyVariables(BaseVariables):
    @numeric_rule_variable
    def my_value(self):
        return self.value

class MyActions(BaseActions):
    @rule_action(params={})
    def my_action(self):
        pass

rules = [{"conditions": {"all": [{"name": "my_value", "operator": "greater_than", "value": 5}]}, "actions": [{"name": "my_action", "params": {}}]}]
run_all(rule_list=rules, defined_variables=MyVariables(), defined_actions=MyActions())
  • Whether the package works reliably with Python versions beyond 3.7 despite requires_python allowing current versions
  • Performance characteristics when evaluating large rule sets or complex nested conditions
  • Whether the package is actively maintained or in long-term stable maintenance mode given dormant status since 2022-03-18
Same gist for agents: .md · .json

What it is and what it does

business-rules is a rules engine that decouples business logic from code deployment. You define a set of variables (computed properties of your domain objects) and actions (side effects to trigger), then write rules as JSON objects specifying conditions over those variables and which actions to run. The engine evaluates the conditions and executes matching actions without requiring code changes or redeployment.

It's designed for scenarios where non-technical stakeholders (analysts, business users) need to configure system behavior—such as eligibility rules for discounts, automated workflows triggered by state changes, or marketing logic. The package exports metadata about available variables, operators, and actions so a UI can be built to let users compose rules visually. It depends only on six for Python 2/3 compatibility.

Use it for

  • Define marketing eligibility rules (e.g., discount thresholds) that analysts can adjust without code deployment
  • Automate email triggers or notifications based on user state transitions or event sequences
  • Configure inventory management rules (e.g., reorder when stock falls below threshold) dynamically
  • Build a rule-based workflow system where business teams can add conditional logic without engineering involvement
  • Export rule metadata to a web UI so non-developers can visually compose and test business rules

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you need a lightweight rules engine for non-developers to configure business logic without code changes.

The package is stable (no known vulnerabilities, low install friction, permissive license) but dormant—last release was 2022-03-18. It works well for straightforward condition-action rules; evaluate whether its feature set and Python version support align with your project before committing to long-term use.

Install

business-rules on PyPI

Before you install

Low friction install with a single runtime dependency (six). Maintenance is dormant—last release was 2022-03-18—but the repository remains active with recent commits and 991 stars, suggesting the package is stable rather than abandoned.

License in practice

MIT license (permissive) means you can use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.

Quickstart

pip install business-rules

from business_rules import run_all
from business_rules.variables import BaseVariables, numeric_rule_variable
from business_rules.actions import BaseActions, rule_action

class MyVariables(BaseVariables):
    @numeric_rule_variable
    def my_value(self):
        return self.value

class MyActions(BaseActions):
    @rule_action(params={})
    def my_action(self):
        pass

rules = [{"conditions": {"all": [{"name": "my_value", "operator": "greater_than", "value": 5}]}, "actions": [{"name": "my_action", "params": {}}]}]
run_all(rule_list=rules, defined_variables=MyVariables(), defined_actions=MyActions())

Verify before relying

  • Whether the package works reliably with Python versions beyond 3.7 despite requires_python allowing current versions
  • Performance characteristics when evaluating large rule sets or complex nested conditions
  • Whether the package is actively maintained or in long-term stable maintenance mode given dormant status since 2022-03-18

Package facts

LicenseMIT permissive
Python supportSupports the current Python release >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*
Install frictionLow. Pure-Python wheel
Runtime dependencies
1 package
six
MaintenanceDormant 1,610 days since the last release
Last repo commit
First released
Downloads179,966 / month, #10,157 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Programming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7

Evidence: business_rules-1.1.1-py2.py3-none-any.whl

Tags

Capabilities
business rules engine pythonrule-based decision logicdynamic business logic without codecondition-action rule systemconfigurable workflow rulesrule engine DSLbusiness intelligence rules
Topics
rule-enginebusiness-logicno-code-config

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “business rules engine python”

  • business-rulesA Python DSL for defining business rules as JSON that can be executed…
  • zen-enginezen-engine is a Python binding for a Rust-based business rules engine…
  • panzi-json-logicEvaluates JsonLogic and CertLogic rules—JSON-serializable logic…

Give your agent the search over MCP, or paste the wish link into any chat.

More Software Development packages

typing-extensions Worth it
PyPI · Software Development · released Jul 2026

Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.

PSF-2.0pure Python · 3.9+
1.9Bdownloads / mo
numpy Worth it
PyPI · Software Development · released Aug 2026

NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.

BSD-3-Clause AND 0BSD AND MIT AND Zlib AND CC0-1.0compiled wheel · 3.12+
1.1Bdownloads / mo
fastapi Worth it
PyPI · Software Development · released Jul 2026

FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.

MITpure Python · 3.10+
568.6Mdownloads / mo
annotated-doc With conditions
PyPI · Software Development · released Jul 2026

Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.

MITpure Python · 3.9+
456.2Mdownloads / mo
typer Worth it
PyPI · Software Development · released Aug 2026

Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.

Install it if you are building CLIs in Python.

MITpure Python · 3.10+
369.3Mdownloads / mo
distlib With conditions
PyPI · Software Development · released Jun 2026

Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.

permissive licensepure Python
323.3Mdownloads / mo

See also json-logic · json_logic_qubit · panzi-json-logic · zen-engine · rules · django-service-objects · boolean.py · smdebug-rulesconfig · trytond · business-duration