This documentation is in line with the active development, hence should be considered work in progress. To check the documentation for the latest stable version please visit https://fabiolune.github.io/logic-engine/
The logic-engine
is a lightweight .NET library designed to facilitate dynamic and flexible logic systems.
It allows developers to define a generic set of rules that can be compiled into executable code, enabling modifications to business logic without altering the system's core.
By leveraging functional programming principles (thanks to Franco Melandri's Tiny FP), it offers tools to evaluate whether an entity satisfies specific conditions and, if not, identify the reasons for failure.
Key components include Rules
, which are basic logical constructs, RulesSets
for combined conditions using logical AND, and RulesCatalog
for broader combinations using logical OR.
It supports a wide range of operators, from comparisons (e.g., equality, greater-than, etc.) to more complex string and enumerable operations.
The library aims to simplify logic handling while maintaining flexibility and clarity in implementation.