First version coming soon! Track updates
JVM-native rule engine
Dynamic rules, native performance.
With no-restart updates at runtime, confidently keep your business logic in your code.
How it works
Write in Kotlin
Author rules in pure Kotlin with a fluent, type-safe API.
Compiled to Bytecode
The library compiles and loads your rules as JVM .class files.
Native Speed
Rules execute as compiled bytecode — no interpretation overhead.
Build Rule Flows Visually
Drag nodes to explore the payment-screening flow from the code above.
How It All Fits Together
Rules4J assembles native classes and dynamic Kotlin files into one compiled flow.
Your Application
Rule Store
One compiled flow. Native speed. Like calling a method in your app.
Designed for Performance
Rules are compiled to JVM bytecode and executed with native speed.
Update at Runtime
Flows and rules are updated without restarting the application.
Cloud Native
Updates are distributed across all instances of a running application.
Non-Invasive API
Drop-in solution with minimal changes to your existing codebase. No need for external DSLs or configuration files.
Built with Compliance in Mind
All rules are versioned and stored in a central repository, providing a clear audit trail for regulatory compliance and internal governance.
Provable & Replayable Decisions
Every decision is logged and replayable, with full context, ensuring provable and reliable rule execution.