Helios

Overview

The open toolkit for modern lighting control.

The open toolkit for modern lighting control.

@helioslx/core is a TypeScript toolkit for sending and observing sACN (E1.31) DMX over the network. It gives you validated 512-slot frames, sparse channel writes, fades, optional persistence, and packet viewing.

It does not model fixtures, personalities, scenes, cues, or show control. Those belong in a higher layer that produces frames and channel maps.

Live lighting

Incorrect values, universes, priorities, or interface selection can move fixtures, trigger strobes, or black out a venue. Test on a closed network or with outputs inhibited first. Read Safety before connecting to a live rig.

Package layout

ImportWhat it provides
@helioslx/coreSources, universes, viewers, memory stores, errors
@helioslx/core/nodeUDP send/receive, process shutdown handlers
@helioslx/core/redisRedis-backed output and viewer stores
@helioslx/core/httpUnbound Elysia REST + viewer WebSocket routes
@helioslx/core/testingFake clock, recording transport, fake receiver

The root module is runtime-neutral. Install peer dependencies only for the subpaths you use. Node.js 22+ is the supported production network runtime.

Limits that matter

  • Channels are one-based (1..512); values are integers 0..255
  • Universes are 1..63999; priorities are 0..200 (default 100)
  • A full frame is exactly 512 slots
  • Awaiting a mutation means the write is scheduled and persisted — not that a fade has finished

Next steps

On this page