Contents ↓

Develop with Chromatik

Chromatik offers a rich set of open APIs that enable you to extend its functionality. The most common use case is to implement your own animation devices either in Javascript or Java.

But you can do much more than that. The Content Package framework allows you to bundle and distribute your own components, and the Plugin framework enables deep integration and extension of the core engine.

Platform Support

The bulk of Chromatik's implementation is in Java, currently using version 21 of the Adoptium Temurin™ distribution. Care is taken to keep the core libraries as cross-platform and dependency-free as possible. Headless CLI-only usability a primary design goal, with Raspberry Pi a typical target for physical deployments.

Native libraries are embedded via LWJGL for high-performance cross-platform UI.

Public Repositories

While Chromatik is not distributed under a copyleft open source software license, the application is developed largely in the spirit of open source. Core engine source code is publicly available for reference, with an open stance towards contributions and suggested modifications.

Complete JavaDoc API documentation is available.

Source code falls under the Chromatik / LX Software License →

Developer Community

Chromatik is used by a variety of projects, with a particular prevalence at Burning Man. Many of these projects are collaborative in nature or some form of open source. Questions, comments, show & tell are always welcome.

Join us on the Discord server →

If email is better: support@chromatik.co

Project History

The LX library was started in 2010 by Mark C. Slee (henceforth referred to in the first person). It was originally a set of tools implemented in the Processing framework to support smooth blending between discrete pixel animation routines with KiNET output support for Color Kinetics LED fixtures. I used this to run my first lighting installation at Burning Man — just 100 nodes, a solar panel, marine battery, and a cheap netbook.

While a lot of powerful lighting tools obviously already existed, there were two common limitations:

  • A lack of support for sparse, volumetric layouts in 3D space that were becoming increasingly common with the proliferation of LEDs
  • Lighting applications had evolved out of the club/stage lighting paradigm, geared towards cues on a timeline or a desk console

I found myself wishing for a lighting application that behaved more like my favorite loop-based DAW. Drawing inspiration from my background producing electronic music, I rapidly expanded the LX library and incorporated features common in the audio synthesis worlds, most notably setting up LFOs and other modulators to drive algorithmic parameter changes to create an endless, freely looping generative environment.

Over time LX scaled in size and complexity, with some installations crossing the 100,000 LED threshold. The project outgrew Processing and evolved from a set of APIs for lighting developers into to a full-fledged standalone application. No longer requiring coding experience to operate, Chromatik finally crossed the threshold of becoming a Digital Lighting Workstation.

Art Installations

Below is a selected (and incomplete) list of notable projects and artists that have used Chromatik APIs over the years to develop dynamic light art installations.