Joule is a low-code omni-use case platform designed for contemporary streaming analytical processing within hybrid environments and the Internet of Things

Stable current Joule release v1.1.0

New version 1.2.0-SNAPSHOT currently under development. See Change History for ongoing changes

Joule is your go-to Low Code Platform for seamless use case development. Simplifying the process, Joule offers an expressive language for defining processing pipelines, utilizing a range of prebuilt and customisable processors, data sources, and sinks.

Straight out of the box, Joule offers standard implementations for data sources and sinks, along with essential core processors, allowing you to kickstart your use case development journey with ease.

Core Features

Low Code

Effortlessly create use cases with Joule DSL, enabling swift development of versatile stream processing pipelines.


Harness ML model support, auditing, geospatial capabilities, streaming window analytics, SQL metrics engine, and triggers for enhanced functionality.

Event Transformations

Enrich, encrypt, and mask data effortlessly with out-of-the-box processors and supported scripting languages (Node.js, JavaScript, Python).

Data Connectors

Effortlessly consume and stream consistent data with out-of-the-box connectors, including Kafka, MQTT, data lakes, NoSQL, web sockets, OpenAPI, and more.

Reference Data

Utilise the capability to enrich streaming events and calculations with slow-moving data through the embedded distributed cache solution.


An extendable API is available to empower developers in building custom components.

Platform Architecture

Joules architecture principles is to keep everything as simple as needed to be, provide SDK for customisations and leverage key mature technologies that are able to support a wide array of omni-use cases.

Joule out-of-the-box includes standard data connector implementations, core processors, and a DSL, accelerating the development and realisation of use cases.

Low Code DSL

Joule DSL provides an easy method to build use cases with reusable assets while delivering business impact at pace.

  - filter:
      expression: "symbol == 'MSFT'"
  - time window:
      emitting type: tumblingQuoteAnalytics
      aggregate functions:
        MIN: [ask, bid]
        MAX: [ask, bid]
        type: tumblingTime
        window size: 5000

The DSL is extendable using standard Json annotation when building custom components using the Joule SDK

Learn more about getting started in under 15 minutes

Last updated