@hiobairo/rule-orchestrator
v0.1.1
Published
Framework-agnostic declarative rule engine: rules, conditions, operators, expressions, actions, trace.
Maintainers
Readme
@hiobairo/rule-orchestrator
Framework-agnostic declarative rule engine: rules, conditions, operators, expressions, actions, and execution trace.
Install
npm install @hiobairo/rule-orchestratorWhen to use
- Encode business decisions as HLX, YAML, or JSON rule sets instead of nested
ifchains. - Load data sources, evaluate conditions, run actions, and explain every step.
- Extend the engine with custom operators, actions, data sources, and plugins.
API surface
- Orchestration:
RuleEngine,DefinitionValidator,loadRuleSet,loadHlx,loadDefinitions - Same result for a flow or a screen:
result.outcome,result.messages.email. Pass{ fields: ['email'] }to re-check one input. - Building blocks:
ConditionEvaluator,ActionExecutor,DataSourceResolver,ExpressionEngine - Built-ins:
builtinOperators,builtinActions,builtinDataSources - Explain:
explainExecution,summarizeTrace,engine.test()with dry-run and mocks
Example
import { RuleEngine } from '@hiobairo/rule-orchestrator';
const engine = new RuleEngine();
const result = await engine.execute({
ruleSet: {
id: 'demo',
rules: [
{
id: 'approve-small',
when: { field: 'input.amount', operator: '<=', value: 500 },
then: [{ type: 'approve' }],
},
],
},
input: { amount: 100 },
});
console.log(result.outcome); // approvedThe core does not read process.env; pass env: { API_KEY: '…' } from your app or use the CLI.
More
- Repository README
- HLX — one rule per line (
.hlx) - Rule format
- Getting started
