Skip to main content

Open-Source Business Rules Engine

Project description

License: MIT

Python Rules Engine (ZEN Engine)

ZEN Engine is a cross-platform, Open-Source Business Rules Engine (BRE). It is written in Rust and provides native bindings for NodeJS and Python. ZEN Engine allows to load and execute JSON Decision Model (JDM) from JSON files.

JSON Decision Model

An open-source React editor is available on our JDM Editor repo.

Usage

ZEN Engine is built as embeddable BRE for your Rust, NodeJS or Python 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.

If you are looking for a Decision-as-a-Service (DaaS) over REST, take a look at GoRules Cloud.

Installation

pip install zen-engine

Usage

To execute a simple decision you can use the code below.

import zen

# Example filesystem content, it is up to you how you obtain content
with open("./jdm_graph.json", "r") as f:
  content = f.read()

engine = zen.ZenEngine()

decision = engine.create_decision(content)
result = decision.evaluate({"input": 15})

Loaders

For more advanced use cases where you want to load multiple decisions and utilise graphs you can build loaders.

import zen

def loader(key):
    with open("./jdm_directory/" + key, "r") as f:
        return f.read()

engine = zen.ZenEngine({"loader": loader})
result = engine.evaluate("jdm_graph1.json", {"input": 5})

When engine.evaluate is invoked it will call loader and pass a key expecting a content of the JDM decision graph. In the case above we will assume file jdm_directory/jdm_graph1.json exists.

Similar to this example you can also utilise loader to load from different places, for example from REST API, from S3, Database, etc.

JSON Decision Model (JDM)

JDM is a modeling standard for business decisions and business rules and is stored in a JSON format. Decision models are represented by graphs. Graphs are built using nodes and edges. Edges are used to pass the data from one node to another (left-side to right-side).

An open-source version of the React Component is available on our JDM Editor repo.

You can try Free Online Editor with built-in Simulator.

JSON Example

Input node contains all data sent in the context, and Output node returns the data from the decision. Data flows from the Input Node towards Output Node evaluating all the Nodes in between and passing the data where nodes are connected.

Decision Tables

Decision table is a node which allows business users to easily modify and add new rules in an intuitive way using spreadsheet like interface. The structure of decision table is defined by its schema. Schema consists of inputs and outputs.

Decision tables are evaluated row by row from top to bottom, and depending on the hit policy a result is calculated.

Inputs

Input fields are commonly (qualified) names for example cart.total or customer.country.

{
  "cart": {
    "total": 1000
  },
  "customer": {
    "country": "US"
  }
}

Inputs are using business-friendly ZEN Expression Language. The language is designed to follow these principles:

  • Side-effect free
  • Dynamic types
  • Simple syntax for broad audiences

List shows basic example of the unary tests in the Input Fields:

Input entry Input Expression
"A" the field equals "A"
"A", "B" the field is either "A" or "B"
36 the numeric value equals 36
< 36 a value less than 36
> 36 a value greater than 36
[20..39] a value between 20 and 39 (inclusive)
20,39 a value either 20 or 39
<20, >39 a value either less than 20 or greater than 39
true the boolean value true
false the boolean value false
any value, even null/undefined
null the value null or undefined

Note: For the full list please visit ZEN Expression Language.

Outputs

The result of the decisionTableNode evaluation is:

  • an object if the hit policy of the decision table is FIRST and a rule matched. The structure is defined by the output fields. Qualified field names with a dot (.) inside lead to nested objects.
  • null/undefined if no rule matched in FIRST hit policy
  • an array of objects if the hit policy of the decision table is COLLECT (one array item for each matching rule) or empty array if no rules match

Example:

Screenshot 2023-03-10 at 22 57 04

And the result would be:

{
  "flatProperty": "A",
  "output": {
    "nested": {
      "property": "B"
    },
    "property": 36
  }
}

Functions

Function nodes are JavaScript lambdas that allow for quick and easy parsing, re-mapping or otherwise modifying the data. Inputs of the node are provided as function's arguments. Functions are executed on top of Google's V8 Engine that is built in into the ZEN Engine.

const handler = (input) => {
    return input;
};

Decision

Decision is a special node whose purpose is for decision model to have an ability to call other/re-usable decision models during an execution.

Support matrix

linux-x64-gnu linux-arm64-gnu darwin-x64 darwin-arm64 win32-x64-msvc
yes yes yes yes yes

We do not support linux-musl for now as we are relying on the GoogleV8 engine to run function blocks as isolates.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zen_engine-0.15.0.tar.gz (98.0 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

zen_engine-0.15.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.5 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

zen_engine-0.15.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.5 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

zen_engine-0.15.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (15.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

zen_engine-0.15.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.5 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

zen_engine-0.15.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (15.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

zen_engine-0.15.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.5 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

zen_engine-0.15.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (15.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

zen_engine-0.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

zen_engine-0.15.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (15.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

zen_engine-0.15.0-cp311-none-win_amd64.whl (8.2 MB view details)

Uploaded CPython 3.11Windows x86-64

zen_engine-0.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

zen_engine-0.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (15.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

zen_engine-0.15.0-cp311-cp311-macosx_11_0_arm64.whl (10.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

zen_engine-0.15.0-cp311-cp311-macosx_10_7_x86_64.whl (11.0 MB view details)

Uploaded CPython 3.11macOS 10.7+ x86-64

zen_engine-0.15.0-cp310-none-win_amd64.whl (8.2 MB view details)

Uploaded CPython 3.10Windows x86-64

zen_engine-0.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

zen_engine-0.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (15.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

zen_engine-0.15.0-cp310-cp310-macosx_11_0_arm64.whl (10.3 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

zen_engine-0.15.0-cp310-cp310-macosx_10_7_x86_64.whl (11.0 MB view details)

Uploaded CPython 3.10macOS 10.7+ x86-64

zen_engine-0.15.0-cp39-none-win_amd64.whl (8.2 MB view details)

Uploaded CPython 3.9Windows x86-64

zen_engine-0.15.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.5 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

zen_engine-0.15.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (15.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

zen_engine-0.15.0-cp38-none-win_amd64.whl (8.2 MB view details)

Uploaded CPython 3.8Windows x86-64

zen_engine-0.15.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.5 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

zen_engine-0.15.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (15.1 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64

zen_engine-0.15.0-cp37-none-win_amd64.whl (8.2 MB view details)

Uploaded CPython 3.7Windows x86-64

zen_engine-0.15.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.5 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

zen_engine-0.15.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (15.1 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ ARM64

File details

Details for the file zen_engine-0.15.0.tar.gz.

File metadata

  • Download URL: zen_engine-0.15.0.tar.gz
  • Upload date:
  • Size: 98.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.3.0

File hashes

Hashes for zen_engine-0.15.0.tar.gz
Algorithm Hash digest
SHA256 831922d870d44b2528dc6723eb89489a55ec838049456ed2ad08e181c596097e
MD5 cf1cd2bcb45f4ede70213371fbfa653b
BLAKE2b-256 959103d217e613b122770c728e27445b68d76483cb1e875c7b9c337c5ef73144

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a9ce5105e3306096dc75a4371d485a52bd3b4de1ee6f90070c648fbbc7a8384a
MD5 4fa193fdaa5cfeaf8ee2ebb524353b75
BLAKE2b-256 4493e284921ebb34cd16ce95613d12e20160a1bc8d7937e79007b54c68c95678

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 175617d325e07fb13efad1d827e25947167aceba537eb2a9d69630b31a134f27
MD5 e878b0c6a0f9d607ea75d5b1bb2185c8
BLAKE2b-256 d24a423a97e5e96d704766b41be86e6d393c127b376355ee5be7aa5e1a3fcc98

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8a1c8245964c641e037cbe757469bb3bf9cd2b67520489de5ce68d704e6c0a52
MD5 e2fb10475552d93a96565c61863c4a9e
BLAKE2b-256 dd3fe8d1d953a83170bff83a2e012f6341c2ade9dc31e754a734343e76112b14

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 66a7d21233210c9c703a269b43093452b071e1eaeff71a2d3c0c8aa3af6e9777
MD5 77a0c668c6b572283c476f8000e0274d
BLAKE2b-256 5dab5666598982982fec1209be58c64345ccc9d5ef35818695bcea3d6cf74c9d

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8197b962c50132195e1b2755f112418444030216a351d424b71a92cfaadb610f
MD5 362a9ebc8f5b2238a32b6a4621751eaa
BLAKE2b-256 a98e86726fae5af5acb0c7cd5853a431e787deab59fc0007f4e933cbbc5d04a4

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7282cbdd0996646853461af1436365ca55842062433033302c138d75ed08b8d3
MD5 ac5ace126e7d6421b4fbadc537431175
BLAKE2b-256 203f5d7d2e977c15bceb7d28b9feab3486cb2a90b9fb66c384f43d69d65fe585

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f645a70b16b677e5e1c3dcb579411ebdc074220aa7095a4a509810173b790420
MD5 fa6ace08f03e69d51ea6260e44016261
BLAKE2b-256 23e304962c62eb480d7e470c6b624f186dbcbaf7c3530a9180a017c9beeb1f94

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c7cb76b9c472c562297fbbaf6df18e4e889cfe4a77c3f6dfc7908cd026b1babb
MD5 4af50c87e5901960feb238305a21475e
BLAKE2b-256 afde3fae7f4865ee5b920c84b1e7e48f3d51ea95eebdbd147e02f8730baa4264

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d9a2c8a229b106eaac1edb8868e80d35a00b92585bd173b3c69f47f0e4de0c53
MD5 986913a58547c6976882e114bd21f358
BLAKE2b-256 ebd61794526e76393db8d0a15afbe63ced6cfd4caaba8d2cbd0b48f75f375936

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp311-none-win_amd64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp311-none-win_amd64.whl
Algorithm Hash digest
SHA256 ce63bf64c88844a001bc4dcb13eb2eb47f993d8f413defd51bad9e11495385ba
MD5 44ad40ef5c21c3fc2dbae784679d21fc
BLAKE2b-256 109cdb888f4c2643c6443492977efcf4c5bbd365c742eb04df0e9cb48b9879e5

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ae9ac464519267237fac4f8545cd771dfaad53cf1ade86b5288febf1bc3dbb94
MD5 e6ecc5c25fda4765fcdffc056d42f94f
BLAKE2b-256 969c2ab60b0501abf168ee3c124264b9ddabf03ff11ac0eaee062165a6621fe5

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2253f673a55f95b971678911e2b6470367307858ab95deb57480a2cdb46dd920
MD5 732b51d7af51d1378217617b76291f46
BLAKE2b-256 7210d6979aa302ed507f2d47722693dadcc95ef35f695363282ddca016e126d0

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 80ae513cc716c9fe240333e4fc2d4e62b6eeb98d4db61262e1a7417fccb05f5c
MD5 24f1fc995f58e257ee0ee16f5de56ad7
BLAKE2b-256 864c109fe168a146f391e2ccb890306406097341dc35f101b5dc96ce95ff6a0d

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp311-cp311-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp311-cp311-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 b124d6bc4eee83fd93f4bd0bcb6aa81c16e154ec16578d6a4135408667a75196
MD5 3ab09f2dfa80e6d748199a4c4934a940
BLAKE2b-256 e364d2e64b2cdb53cfd37312239f6fa45fdef3aa5f7d8b6279b7cc73ccc3ceab

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp310-none-win_amd64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp310-none-win_amd64.whl
Algorithm Hash digest
SHA256 1165ca933fb0482efe90dd44bb4a57066312619406fdc4c05c391928e6d757f5
MD5 def9c3b8b1a89de77cdb10a95619f0ae
BLAKE2b-256 6b2978fd41e2cb9fe29c1d04f398f0adbf4beacd4bd1298a755fdb2b7c499c15

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 946dc06f3ede1a8ab85883b1847ab6d9d466c4d1d65924acbfbe8453af66e33a
MD5 83ccfa119ef03c5d8ca39fe95e578876
BLAKE2b-256 452c12476c2250939ae5e9567eba0ead58a62e0f2185908fa75f02b4789d7adb

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8526c22a3d6867bab1c3fb315a44751edf32ba557c101cc2026cf51135e35c3c
MD5 5582e5e565132bda28e50950d0a6e97e
BLAKE2b-256 c23019d295263fc05e1c6d7235f8114ad9e51728d04bd9fded19fbdfb7219d29

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 804e37d93adf49c2419a5c51f1b22df7d29879658a3f19a285c63d812e789a82
MD5 25ee8f602bea8f481ebced2471178bdf
BLAKE2b-256 e160a5906828e330d1c112d48c0747777c02f6e059fa1d35359c44450620950c

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp310-cp310-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp310-cp310-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 ced3b80ef9964ec6c4c4ba16b4713d5e18dff5101f12c8930c24712a94f07f2a
MD5 b6dbc0d407fe96914a31ca4b00455988
BLAKE2b-256 6aa3524d6290647f29cc1d6efb94e910fb27ff5878ba3ea25e238e605bf46092

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp39-none-win_amd64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp39-none-win_amd64.whl
Algorithm Hash digest
SHA256 44e4cd9e810498ddb41e92a2fd29dc5865a54aa74befad2b2eeb27eaaae6e89e
MD5 7912f94792566e7b5d33b273a07a270f
BLAKE2b-256 9eaf2f8310fdb72c7a29ac37ce414107116f018db8a95fa6209b29e37e58c705

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9a4478c9df6f1d8efd6995acfc9239c10bc18f8bfb7a6e8d80add9fafe7a5525
MD5 28d0cac617529e03d66b6fafb598df70
BLAKE2b-256 ceb7ae6a1c9fc497700956b772fcd98a0868d7130c4eefa1bbca12699df56f14

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6cedb30b109c595fa3518ab94a106adcce029100d3b503e32b92f3c23db485dc
MD5 10a8a38f99f0a1340d895d2a82e672f8
BLAKE2b-256 0f31ccd05e5f7f9c81280188e7d4418a0b67f3768051c5c6a8051102e25e8df0

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp38-none-win_amd64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp38-none-win_amd64.whl
Algorithm Hash digest
SHA256 19de8ef8a2094444f908a8584fb8f282113269ff063147477177d0ff4a7491cd
MD5 5ecfd9e44d4900cad0107f7365bd1a60
BLAKE2b-256 c2efe2ac2658be54de110c6afbd52d4f2b742340298e28e21ab10280c008b89f

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 78dca5cdf60b48a28b2498c30f707af407529cdaa92999a1510c4feff672d18a
MD5 bcaf192e2ae93044efd5bb9cf7d7c05a
BLAKE2b-256 27a9cfd8f35b6a55288d5c8265bffbfaf66a5ea2d3bc92cc42bdbe0e33391bdd

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 cfaf195e85341564497c89d61db7148a2b9d4e003c2264aa69b5a8be787a65b0
MD5 62a56f27161518e94bd18a22c6d01af2
BLAKE2b-256 4da0cab9656a9322bbc57f0c0257e6fbb1966cbc8991da103d4454a9a2fc9c00

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp37-none-win_amd64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp37-none-win_amd64.whl
Algorithm Hash digest
SHA256 8ac20c8d6ab074ee1e8985a0300e03c72a9f47f39461e41a83765d9435215564
MD5 6d60794612b256cad46a258c5d2669dc
BLAKE2b-256 a8adf3698f799db6fd56504bf9ba7c9538da28aedf38cfe077dafc0f07fd0265

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3752d7eae9483374189eccdd1fa0c17aec275a37dded9943a5580467028b0c8b
MD5 f0b7075237f43eb2fb7061b990efdc83
BLAKE2b-256 61e5045fe5267c022c709785485d7a9c887169362d058f51b22327853a008887

See more details on using hashes here.

File details

Details for the file zen_engine-0.15.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zen_engine-0.15.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 295f7a04112fc23f886a9ac85fffc6f95d312033c928495fbd6f0360dbc3fceb
MD5 37fd557310df40d48f5b0608d0c2ee7a
BLAKE2b-256 4dc0ec9712c037edc5c8aa12d4423720a6fa56dde2ee64c2eee164ea96728f7c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page