14 customizable effects
Rainbow, Radial Wave, Aurora, Plasma, Fire, Comet, Twinkle, Scan, Ripple, Breathing, Gradient, Strobe, Color Cycle and Static, each a real WebGL shader, not a canned preset.
ARGB lighting · without the bloat
Meet LumaForge. One tiny app to drive all your ARGB.
No macro engine. No fan curves. Just a spatial canvas where you place every LED, an animated effect flows across your whole setup, and the color under each light gets pushed to the hardware. Asus Aura, your RTX 4090, ARGB header fans, your GMMK, and WLED, all on one screen.
Most RGB software treats every device as a separate island with its own little effect. LumaForge flips that. You drop every LED onto a single 2D canvas exactly where it sits on your desk, an animated shader renders across the whole surface, and the color under each LED is sampled and pushed out. A wave doesn’t restart per device, it sweeps across your motherboard, fans, GPU and keyboard as one continuous picture.
LumaForge talks to your gear through OpenRGB for everything on the machine, and straight over the network for WLED. That means your Asus Aura motherboard, your RTX 4090, the ARGB fans on the header and your GMMK keyboard all sync to the same effect, alongside any WLED strips lighting the room behind your desk.
Every effect ships with color pickers and parameter sliders, speed, scale, brightness, direction, so the same shader becomes a hundred different looks.
Rainbow, Radial Wave, Aurora, Plasma, Fire, Comet, Twinkle, Scan, Ripple, Breathing, Gradient, Strobe, Color Cycle and Static, each a real WebGL shader, not a canned preset.
Every effect exposes color pickers and parameter sliders, speed, scale, brightness, direction. Tune the same shader into a calm breathing glow or a frantic strobe.
Add a WLED device by IP and LumaForge streams realtime color straight to it over UDP, DRGB for small strips, DNRGB for big ones. The strip behind your desk joins the same canvas.
Built with Tauri, a Rust backend with the system WebView. That’s a ~13 MB executable sipping ~40 MB of RAM, instead of the hundreds of megabytes a full RGB suite drags around.
On-machine devices are driven through OpenRGB in Direct mode, so Aura, the GPU, ARGB headers and GMMK keyboards all take per-LED realtime color from the exact same canvas.
Arrange every LED on the canvas to match where it physically sits. Positions are normalized [0,1], so your layout maps to real space and effects travel in the right direction.
The pipeline is the whole trick. A WebGL effect renders to an offscreen 256² buffer, LumaForge reads it back once per frame, samples the color under each LED on the CPU, and ships one IPC call to the backend, which fans out to OpenRGB and WLED. Cost stays constant no matter how many LEDs you own.
A WebGL fragment shader draws the chosen effect to an offscreen 256² framebuffer at 60 fps.
One readPixels per frame, then a cheap CPU lookup at each LED’s normalized position grabs its color.
push_frame(colors, slices) crosses to the Rust backend once per frame, no per-device chatter.
The backend dispatches to OpenRGB over TCP and WLED over UDP, throttled to a bus-safe ~30 Hz while the canvas keeps running at 60.
Windows 10 / 11 · x64. Tiny Tauri build, code-signed, no accounts.