finds.dev← search

// the find

gorules/zen

★ 1,777 · Rust · MIT · updated May 2026

Open-source Business Rules Engine for your Rust, NodeJS, Python, Go, Java, C#, Kotlin (JVM), Kotlin (Android) and Swift (iOS) applications.

ZEN Engine is a Rust-core business rules engine that evaluates decision graphs (decision tables, switch nodes, expression nodes, JS function nodes) defined in their JSON Decision Model format. It's for teams that need non-developers to own business logic — pricing rules, eligibility checks, fraud scoring — without deploying code. The core is embeddable; Node/Python/Go/C# bindings ship via FFI.

Rust core means evaluation is fast and the memory footprint is small enough to embed in Lambda/serverless without cold-start pain. The graph-based JDM model is genuinely more expressive than flat decision tables — you can compose and reuse sub-decisions via the Decision node, which is the thing most competing BREs get wrong. The snapshot test suite is extensive (100+ real-world scenarios like AML, clinical pathways, insurance underwriting) so regressions surface quickly. Language coverage is broad and not an afterthought — UniFFI bindings give you Kotlin/Swift/C# without maintaining separate implementations.

Function nodes run JavaScript inside QuickJS with a hard 50ms timeout — you can't do async I/O or call external services from a function node, which is a real constraint for rules that need to enrich data mid-evaluation. Contributions are closed: 'we can't accept any code contributions at this moment' — you're locked into their roadmap if a node type or expression feature is missing. The JDM editor and engine are open-source, but the full BRMS (audit logs, versioning, access control) is the commercial product, so you'll hit that wall quickly in a production org. musl targets are not supported for the Rust core or Python binding, which rules out Alpine-based containers without workarounds.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →