About Lux

Lux is a real-time, node-based visual programming environment for creative coding, installations, live performance, and generative art.

Vision

We’re building the tool we always wanted — a visual programming environment that combines the creative power of TouchDesigner and vvvv with modern technology: Rust for predictable performance, wgpu for cross-platform GPU rendering, and a Spread-first architecture that makes working with collections of data natural and fast.

Technology

Lux is built on a modern stack designed for real-time performance:

  • Rust — No garbage collector, no runtime pauses. Predictable frame times, every frame.
  • wgpu — GPU rendering via Vulkan, Metal, and DirectX 12. The same API everywhere.
  • Vello — GPU-accelerated 2D vector graphics for crisp, resolution-independent output.
  • WASM Plugins — Extend Lux with custom nodes written in Rust, C, Zig, or any language that compiles to WebAssembly.

Core Concepts

  • Nodes — Everything is a node. Generators create data, filters transform it, outputs render it.
  • Spreads — First-class collections that flow through every node. Feed 1000 positions to a Circle node and get 1000 circles. No loops required.
  • Real-time evaluation — The node graph evaluates every frame. Change a parameter and see the result immediately.
  • GPU pipeline — Rendering stays on the GPU. Textures, shaders, and compositing run at native speed.

Status

Lux is in active development. Follow along on the blog for updates.