Skip to main content

A declarative rules engine.

Project description

Rulent

Rulent is a python in-memory latency events engine that uses a set of declarative rules and triggers actions (outcomes).

Key Components

The main components of the event engine are as below.

The Web API

This is for ingesting events. This acts as the entry point for new events to be received and validation against rules.

Events

Events are specific, explicitly sent, pieces of information sent with the payload. This sets the foundation for the rules engine to process rules based on the event.

Rules

These are the rules that need to be applied on the JSON payload. This has support for dot notation. The rules can be combined using rules-operator: "or".

A sample rules block:

    rules-operator: "and"
    rules:
      - rule: "Name Check"
        conditions:
          - "person.name": "James"
      - rule: "Age Check"
        conditions:
          - "person.age": ">42"
          - "person.age": "!43"

Outcomes

Once the payloads have been processed against rules, matched payloads can initiate actions. Actions are bundled together as outcomes.

Note: Actions are executed asynchronously.

Actions

Actions that are part of outcomes can be extended by navigating to the logic folder and actions.go file. Currently, this has access to outcomes and the payloads that were received.

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

rulent-0.0.1.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

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

rulent-0.0.1-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file rulent-0.0.1.tar.gz.

File metadata

  • Download URL: rulent-0.0.1.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.13

File hashes

Hashes for rulent-0.0.1.tar.gz
Algorithm Hash digest
SHA256 caca618b0409f8041f6704b2f9a794c03f939011cdd063bce9490a5a8b98ccd9
MD5 36c4d1908f4a5c8d0dcebdda1d8888dd
BLAKE2b-256 2ca4ec5a2817b28807e0f8116500176cf3c578ffb37609fdd81ed62d74848967

See more details on using hashes here.

File details

Details for the file rulent-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: rulent-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.13

File hashes

Hashes for rulent-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f7d586aaefc309781a2c3ba8673017028aa1b857cbd8611f8246d60cea95a867
MD5 b365da80943169e0bd9a1cb4f7ca85a4
BLAKE2b-256 00396f5692706d11cdddc98aae38aafdfd3645b3562ec83037895b0801083a66

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