Clients

Covers Engine 2.0.0

Overview

Choose a client for analysis, dashboards, or external C++ nodes.

Clients let your own application read data from a running DARTWIC Engine, send requests, and follow live updates. Use them for analysis scripts, external tools, or custom dashboards.

Choose the library for your application below. To add features inside DARTWIC itself, use a plugin.

You want to build…Guide
An analysis script, live monitor, or plotting toolPython Client
A Node service, dashboard backend, or data export toolNode.js Client
A native application that reads and writes Engine dataC++ Client
A browser dashboard with live React componentsReact Client
A named node with custom operations and telemetryC++ TEMPEST Protocol Peer
A separate node that owns channels, events, and logsC++ Engine Protocol Peer

Download and install locally

Download the matching client from Downloads, extract it, and follow its guide. Python uses a local pip install; Node.js and React use a locally packed npm archive; C++ uses CMake. The clients are distributed as release archives rather than through PyPI or npm.

You can also install from the public client sources. Each folder includes its transport, README, and install/build metadata. Third-party dependencies are still required. A peer using Engine channels, events, and logs also needs the Engine Protocol SDK, as explained in its guide.

Operations and telemetry

An operation asks the Engine to do something and returns a response, such as the current pressure or the result of a write. Telemetry delivers updates asynchronously while your application stays connected.

Connect → Read, write, or subscribe → Handle results and updates → Disconnect

A successful write reports the operation’s result; check equipment feedback when you need to confirm a physical action. If a request times out, the Engine may still have carried it out. Check the resulting state before retrying a command.

Clients obey the same channel authority as the Interface. Connection status alone does not establish data freshness; check source timestamps before relying on a cached reading. Put timing-critical reactions in Engine tasks, calculations, or events.

The client guides show connection settings, small examples, and cleanup for each language. Using TEMPEST owns the raw protocol details; Networking and Peers covers peer connections, including application-supplied transports.

Compatibility

Use a client release that supports your Engine version. Clients also carry a bundled TEMPEST compatibility value; registration fails with tempest_version_mismatch if its communication format differs from the Engine’s. Install a matching client release rather than changing that value yourself. Custom peer protocols can have an additional application-owned protocol version.