Skip to main content
Install the ZEN Engine and evaluate your first decision in Go.

Installation

Basic usage

Loader

The loader pattern enables dynamic decision loading from any storage backend. Use sync.Map to cache decisions for optimal performance.

File system

AWS S3

Azure Blob Storage

Google Cloud Storage

Error handling

Tracing

Enable tracing to inspect decision execution:

Expression utilities

Evaluate ZEN expressions outside of a decision context:

Best practices

Initialize the engine once. Create a single ZenEngine instance at application startup and reuse it for all evaluations. Implement a loader for dynamic decisions. The loader pattern centralizes decision loading logic and enables caching at the source. Call Dispose() on cleanup. Release engine and decision resources when your application terminates.
Use goroutines for parallel evaluation. Decision evaluation is thread-safe and works well with concurrent workloads.