Product Details
IoTiX Interpreter
Created: 2025
Visual Programming, Internet of Things, Mobile Devices, End-User Development,
Interpreter
The IoTiX Interpreter is a modular and system-agnostic program execution engine
implemented as a Node.js package. Designed to evaluate automation flows created
in the IoTiX Editor, it enables seamless integration with diverse digital
environments and device ecosystems. The first prototype emerged from
a collaboration between BUT FIT and Logimic as part of the project "Services for
Water Management and Monitoring Systems in Retention Basins". More information
about the interpret and associated projects can be found Pocketix GitHub
Organization (https://github.com/pocketix).
The IoTiX Interpreter is built around two core interfaces, IReferenceManager and
ICommander, which abstract system-specific details and enable integration with
diverse environments, including those with custom digital twins or non-JavaScript
runtimes. IReferenceManager manages loading and storing of device parameters,
while ICommander handles the dispatching of execution commands. Program execution
begins with the creation of a ProgramRunner, which parses the program into an
Abstract Syntax Tree (AST) and constructs a dependency table. Each block in the
program can be evaluated and visually represented, ensuring alignment between
graphical and textual logic. The evaluation process involves retrieving
parameters, binding values, traversing the AST, and dispatching the resulting
commands through the provided interfaces.
Through this architecture, the IoTiX Interpreter provides a powerful backend for
executing IoTiX scripts, enabling consistent and adaptable automation across
smart environments. An overview of the interpreter is provided at
https://pocketix.github.io/v1/interpreter.
MIT license.