Guide
Get set up, get lit. Pick your install path and your interface, then go from zero to RGB.
Hypercolor is an open-source RGB lighting orchestration engine for Linux, written in Rust. One daemon drives every RGB device you own β Razer peripherals, WLED strips, ASUS motherboards, Corsair gear, Philips Hue, Nanoleaf panels, Govee lights, and more β all running from the same render engine at up to 60 fps.
Effects are HTML Canvas pages rendered by an embedded Servo browser. Audio FFT, screen capture, and keyboard input feed the render every frame. A spatial sampler maps canvas pixels onto your physical LED positions. The result: one effect paints your whole rig, synchronized, regardless of how many devices or protocols are involved.

πβ‘ Where to start
Your path through this guide depends on two questions: how youβre installing, and which interface you prefer.
πPick your install path
Not everyone needs to build from source. The right starting point depends on your OS and your goals.
| If you are⦠| Start here |
|---|---|
| A Linux user who wants a quick install | Choose your install β prebuilt one-liner |
| On Windows or macOS | Choose your install β desktop package |
| Running Arch Linux | Choose your install β AUR package |
| A developer hacking on Hypercolor itself | Installation β build from source |
πPick your interface
Hypercolor has six entry points. Understanding which one you want saves a lot of confusion.
| Interface | What it is | When to use it |
|---|---|---|
| Desktop app | Tauri shell that owns the tray, supervises the daemon, and renders the web UI natively | The recommended starting point on Windows and macOS; available on Linux too |
| Web UI | Leptos app served by the daemon at http://localhost:9420 | Daily use: browsing effects, tweaking controls, managing layouts |
| TUI | Ratatui terminal dashboard with live LED preview and audio spectrum | SSH sessions, headless setups, or if you live in the terminal |
| CLI | hypercolor binary for scripting and quick control | Automation, shell scripts, CI pipelines |
| Tray applet | System tray icon with a brightness submenu and quick actions | Minimal desktop footprint; change effects without opening a window |
| REST + WebSocket API | Daemonβs full HTTP interface on :9420 | Integrations, agents, and anything programmatic |
The pieces walks through how these connect and which to open first.
πWhatβs in this section
This section takes you from zero to a fully configured rig.
Getting set up
- Choose your install β prebuilt vs. packaged vs. source, by OS and skill level
- Installation β full install instructions for every path
- The pieces β mental model: daemon, app, tray, TUI, CLI, web UI, and how they connect
- Scope β what Hypercolor does and does not control today
First steps
- First launch β what happens on first run: the welcome wizard, device discovery, autostart
- Your first 10 minutes β opinionated happy path: open app β find devices β apply an effect β save a profile
- Quick start β zero to RGB in five minutes via CLI and web UI
- First session β longer hands-on walkthrough covering the full feature set
Going deeper
- The TUI β terminal dashboard: LED preview, audio spectrum, fullscreen mode
- Finding devices β USB discovery, network mDNS, pairing Hue and Nanoleaf, udev permission fixes
- Audio setup β configure PipeWire or PulseAudio for audio-reactive effects
- Profiles and scenes β save full rig state in a profile, automate lighting with scenes
- Configuration β full config reference:
~/.config/hypercolor/hypercolor.toml - Desktop app β the Tauri shell: tray menu, autostart, diagnostics, window controls
Reference
πHow the engine works
graph LR
subgraph Input
A[Audio FFT]
B[Screen capture]
C[Keyboard / MIDI]
end
subgraph Engine
D[Effect renderer
Servo Β· Canvas Β· GLSL]
E[Canvas
640Γ480 default]
SF[SparkleFlinger
compositor]
F[Spatial sampler]
end
subgraph Hardware
G[Razer Β· Corsair Β· ASUS
USB / HID / SMBus]
H[WLED Β· Hue Β· Nanoleaf Β· Govee
UDP / REST / mDNS]
I[QMK Β· Ableton Push 2
USB HID / MIDI]
end
A & B & C --> D
D --> E --> SF --> F
F --> G & H & IEffects render into a virtual RGBA canvas (640Γ480 by default, tunable). SparkleFlinger β the render-thread compositor β latches the newest surface from each active layer at the frame boundary and blends them into one canonical frame per tick. The spatial engine samples that frame at each LEDβs physical position using normalized [0.0, 1.0] coordinates, so effects stay resolution-independent regardless of canvas size. Device output is queued asynchronously so a slow device never stalls the render loop.
The daemon runs an adaptive render loop across five FPS tiers (10 / 20 / 30 / 45 / 60). The default target is 30 fps. The loop downshifts fast on consecutive budget misses and upshifts slowly on sustained headroom, so Servo-heavy effects and simpler ones share the same engine without tuning.
πSupported hardware
Hypercolor currently ships working drivers for 179 devices across 12 driver families, with 233 more researched or in progress. See the full compatibility matrix for the current state by vendor and device.
If you own hardware that is not yet supported, see contributing a driver.
Remove conflicting RGB software before starting. openrazer daemon, OpenRGB, Aura Sync, and iCUE all grab USB HID devices exclusively. If one of them is running when Hypercolor starts, your devices will appear in lsusb but not in hypercolor devices list. Stop them first β or run hypercolor diagnose to identify the conflict.
πEffects
Hypercolor renders effects through an embedded Servo browser (HTML Canvas and WebGL2 / GLSL) and a set of native Rust built-ins compiled directly into the engine. Browse the full library in the effect catalog, or head to the effects section to learn how to write your own.
The TypeScript SDK is published to npm as hypercolor (early 0.1.x release). Scaffold a workspace with bun create hypercolor β see effects setup.

πInterfaces
Web UI β served by the daemon at http://localhost:9420 with no separate process needed. Browse effects, adjust controls live, manage devices, and design spatial layouts from any browser.

Studio β the zone editor inside the web UI. Divide your canvas into zones, each running an independent effect with its own controls and priority. See the Studio section for the full walkthrough.
TUI β a Ratatui terminal dashboard with true-color LED preview, audio visualization, and fullscreen effect rendering.

CLI β the hypercolor binary talks to the daemon over HTTP. Every action you can take in the UI is available via the CLI. See the CLI reference.
MCP server β 16 tools, 5 resources, and 3 prompts for AI assistant integration (Claude Code, Cursor, and friends). The MCP server is disabled by default β see the MCP server reference for how to enable it and connect your agent.
πGetting help
If something is not working, start with hypercolor diagnose β it runs a health check and prints a summary of what the daemon can see. From there, the troubleshooting section has symptom-first answers for the most common issues: devices not found, audio not reacting, network discovery failures, and performance problems.
In this section
Choose your install
Pick the right Hypercolor install path for your OS and skill level β prebuilt, packaged, or source.
Installation
Install Hypercolor on Linux, Windows, and macOS. Prebuilt packages and one-line installers first; source build is a labeled developer section.
The pieces
Mental model: daemon, app, tray, TUI, CLI, and web UI β what each is, when to use it, and how they all connect on :9420.
What Hypercolor controls (and what it doesn't)
Which devices Hypercolor drives today, what it does not control yet, and how to find out whether your hardware is supported.
First launch
What happens the first time Hypercolor runs: app starts, daemon boots, single-instance guard, the first-run wizard, and the tray appearing.
Quick start
Zero to RGB in five minutes, including a no-hardware simulator path and a conflicting-software callout.
Your first 10 minutes
Open the app, see your devices, apply an effect, dial in brightness, and save a profile β from zero to lit in under ten minutes.
Your first session
Hands-on walkthrough from daemon start to a saved, audio-reactive setup β devices, effects, layouts, profiles, scenes, and Studio.
The terminal UI (TUI)
Launch the Ratatui TUI, navigate its panels, browse effects, and read the live spectrum view.
Finding devices
USB auto-discovery, mDNS network scanning, pairing network devices for credentials, identify, and udev permission fixes.
Audio setup
Make your lights react to music: configure a PipeWire/PulseAudio monitor source, set the device field, and verify with the TUI spectrum strip.
Profiles & scenes
Profiles save your full lighting state; scenes hold automated configurations. Learn how each works and how start_profile restores your setup on boot.
Configuration
The hypercolor.toml reference: every section and key, their defaults, and the CLI and REST config surface.
Desktop app
The Tauri shell: window, tray menu, pause/resume, brightness submenu, autostart, export diagnostics, logs and effects folders.
Uninstall & reset
Remove Hypercolor cleanly: stop the daemon, remove binaries, udev rules, systemd units, launchd plists, autostart entries, and config directories.
Changelog & versions
What's in each Hypercolor release, how versioning works, and how to check the version you have installed.