From cd65ce3c2c680bfb12339710b1c42c539c859983 Mon Sep 17 00:00:00 2001 From: Ivan Miletic <60513195+ivanmiletic@users.noreply.github.com> Date: Thu, 13 Nov 2025 13:10:50 +0100 Subject: [PATCH 1/3] Update README with additional language bindings Expanded supported bindings and platforms in README. --- README.md | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 491dab51..91685426 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ # Business Rules Engine ZEN Engine is a cross-platform, Open-Source Business Rules Engine (BRE). It is written in **Rust** and provides native -bindings for **NodeJS**, **Python** and **Go**. ZEN Engine allows to load and +bindings for **NodeJS**, **Python**, **Go**, **Java**, **Kotlin (JVM)**, **Kotlin (Android)**, **Swift (iOS)** and **Browser** (via WASM-wasi). ZEN Engine allows to load and execute [JSON Decision Model (JDM)](https://docs.gorules.io/reference/json-decision-model-jdm) from JSON files. Open-Source Rules Engine @@ -12,7 +12,7 @@ An open-source React editor is available on our [JDM Editor](https://github.com/ ## Usage -ZEN Engine is built as embeddable BRE for your **Rust**, **NodeJS**, **Python** or **Go** applications. +ZEN Engine is built as embeddable BRE for your **NodeJS**, **Python**, **Go**, **Java**, **Kotlin (JVM)**, **Kotlin (Android)**, **Swift (iOS)** or Browser Javascript (via **WASM-wasi**) applications. It parses JDM from JSON content. It is up to you to obtain the JSON content, e.g. from file system, database or service call. @@ -317,15 +317,17 @@ maintainability in complex systems. ## Support matrix -| Arch | Rust | NodeJS | Python | Go | -|:----------------|:-------------------|:-------------------|:-------------------|:-------------------| -| linux-x64-gnu | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| linux-arm64-gnu | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| darwin-x64 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| darwin-arm64 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| win32-x64-msvc | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| linux-x64-musl | :x: | :heavy_check_mark: | :x: | :x: | -| linux-arm64-musl| :x: | :heavy_check_mark: | :x: | :x: | +| Ecosystem | Architectures Supported | Release Channel | +|:----------|:------------------------|:----------------| +| Rust (Core Engine) | all | crates.io | +| Go (CGO Bindings) | `linux-x64-gnu`, `linux-arm64-gnu`, `darwin-x64`, `darwin-arm64`, `win32-x64-msvc` | github.com/gorules/zen-go (auto-sync via PR) | +| Node.js (N-API) | `linux-x64-gnu`, `linux-arm64-gnu`, `linux-x64-musl`, `linux-arm64-musl`, `darwin-x64`, `darwin-arm64`, `win32-x64-msvc`, `wasm32-wasi` | npm (@gorules/zen-engine) | +| Browser (N-API) | `wasm32-wasi` | npm (@gorules/zen-engine) | +| Python (PyO3) | `linux-x64-gnu`, `linux-arm64-gnu`, `darwin-x64`, `darwin-arm64`, `win32-x64-msvc` | PyPI (zen-engine) | +| Java (UniFFI) | `linux-x64-gnu`, `linux-arm64-gnu`, `darwin-x64`, `darwin-arm64`, `win32-x64-msvc` | Maven Central (zen-engine) | +| Kotlin (JVM) | `linux-x64-gnu`, `linux-arm64-gnu`, `darwin-x64`, `darwin-arm64`, `win32-x64-msvc` | Maven Central (zen-engine-kotlin) | +| Kotlin (Android) - coming soon | `android-arm64`, `android-armv7`, `android-i686`, `android-x64` | Maven Central (zen-engine-kotlin-android | +| Swift (iOS) | `ios-arm64`, `ios-x64`, `ios-arm64-sim` | github.com/gorules/zen-ios (auto-sync via PR) | ## Contribution From eeccaded0faf214ce24ddc9ece2396bddb83a2e4 Mon Sep 17 00:00:00 2001 From: Ivan Miletic <60513195+ivanmiletic@users.noreply.github.com> Date: Thu, 13 Nov 2025 15:14:16 +0100 Subject: [PATCH 2/3] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 91685426..d6982366 100644 --- a/README.md +++ b/README.md @@ -325,9 +325,9 @@ maintainability in complex systems. | Browser (N-API) | `wasm32-wasi` | npm (@gorules/zen-engine) | | Python (PyO3) | `linux-x64-gnu`, `linux-arm64-gnu`, `darwin-x64`, `darwin-arm64`, `win32-x64-msvc` | PyPI (zen-engine) | | Java (UniFFI) | `linux-x64-gnu`, `linux-arm64-gnu`, `darwin-x64`, `darwin-arm64`, `win32-x64-msvc` | Maven Central (zen-engine) | -| Kotlin (JVM) | `linux-x64-gnu`, `linux-arm64-gnu`, `darwin-x64`, `darwin-arm64`, `win32-x64-msvc` | Maven Central (zen-engine-kotlin) | -| Kotlin (Android) - coming soon | `android-arm64`, `android-armv7`, `android-i686`, `android-x64` | Maven Central (zen-engine-kotlin-android | -| Swift (iOS) | `ios-arm64`, `ios-x64`, `ios-arm64-sim` | github.com/gorules/zen-ios (auto-sync via PR) | +| Kotlin JVM (UniFFI) | `linux-x64-gnu`, `linux-arm64-gnu`, `darwin-x64`, `darwin-arm64`, `win32-x64-msvc` | Maven Central (zen-engine-kotlin) | +| Kotlin Android (UniFFI) - coming soon | `android-arm64`, `android-armv7`, `android-i686`, `android-x64` | Maven Central (zen-engine-kotlin-android | +| Swift iOS (UniFFI) | `ios-arm64`, `ios-x64`, `ios-arm64-sim` | github.com/gorules/zen-ios (auto-sync via PR) | ## Contribution From 1471f69725bdb46622c45a2f4417872b90dae09d Mon Sep 17 00:00:00 2001 From: Ivan Miletic <60513195+ivanmiletic@users.noreply.github.com> Date: Tue, 25 Nov 2025 10:58:55 +0100 Subject: [PATCH 3/3] Fix Kotlin Android entry in README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d6982366..a23b37aa 100644 --- a/README.md +++ b/README.md @@ -326,7 +326,7 @@ maintainability in complex systems. | Python (PyO3) | `linux-x64-gnu`, `linux-arm64-gnu`, `darwin-x64`, `darwin-arm64`, `win32-x64-msvc` | PyPI (zen-engine) | | Java (UniFFI) | `linux-x64-gnu`, `linux-arm64-gnu`, `darwin-x64`, `darwin-arm64`, `win32-x64-msvc` | Maven Central (zen-engine) | | Kotlin JVM (UniFFI) | `linux-x64-gnu`, `linux-arm64-gnu`, `darwin-x64`, `darwin-arm64`, `win32-x64-msvc` | Maven Central (zen-engine-kotlin) | -| Kotlin Android (UniFFI) - coming soon | `android-arm64`, `android-armv7`, `android-i686`, `android-x64` | Maven Central (zen-engine-kotlin-android | +| Kotlin Android (UniFFI) | `android-arm64`, `android-armv7`, `android-i686`, `android-x64` | Maven Central (zen-engine-kotlin-android | | Swift iOS (UniFFI) | `ios-arm64`, `ios-x64`, `ios-arm64-sim` | github.com/gorules/zen-ios (auto-sync via PR) | ## Contribution