v2.0

GoRules Version 2 is here - redesigned, now with managed cloud.GoRules Version 2 is here!

Watch the launch videoWatch
Node.js SDK

JavaScript
rules engine.

Open source JavaScript rules engine with native Rust performance. Decision tables, expressions, and rule graphs for Node.js, Deno, and Bun.

Up and running
in three steps.

Install the SDK, load a decision graph, evaluate - the same JSON your team edits in the visual editor runs in your process.

Step 1

Install the SDK

Add the GoRules engine to your project using npm, yarn, or pnpm.

npm install @gorules/zen-engine
Step 2

Load a Decision

Create an engine instance and load your decision graph from a JSON file.

import { ZenEngine } from '@gorules/zen-engine';
import fs from 'fs/promises';

const engine = new ZenEngine();
const content = await fs.readFile('./decision.json');
const decision = engine.createDecision(content);
Step 3

Evaluate Rules

Pass your input data and get the decision result in milliseconds.

const result = await decision.evaluate({
  customer: { tier: 'premium', country: 'US' },
  cart: { total: 150, items: 3 }
});

console.log(result.result); // { discount: 15, freeShipping: true }

Why
Node.js?

Built for performance and developer experience - native speed with an API that feels at home in your codebase.

Rust-Powered Performance

Native bindings to our Rust engine deliver near-native speed. Process thousands of rules in milliseconds.

Full Async Support

Built for modern Node.js with full async/await support. Non-blocking evaluation for high-throughput applications.

Zero Dependencies

Minimal footprint with no external runtime dependencies. Just install and start evaluating rules.

About the Node.js SDK

GoRules provides a high-performance business rules engine for JavaScript applications. Built with a Rust core and native Node.js bindings, it delivers exceptional speed without sacrificing the developer experience JavaScript developers expect.

The engine supports decision tables, expression evaluation, and complex rule graphs - all manageable through a visual editor or programmatically via the SDK. Whether you're building pricing engines, eligibility checkers, or approval workflows, GoRules handles the complexity while keeping your code clean.

Unlike traditional rule engines that require a separate server, GoRules embeds directly into your Node.js application. This means zero network latency for rule evaluation, offline capability, and no per-evaluation fees. The same decision graphs created in the GoRules editor work seamlessly in your JavaScript runtime.

See the public Zen Engine benchmarks

Build with Node.js.
Govern with GoRules.

The engine is open source and free forever - add the GoRules BRMS when your team needs versioning, approvals, and an audit trail.