Reflex C++

What is Reflex?

A C++ application framework for building high-performance, GPU-accelerated applications particularly suited for audio software, creative tools, and anything that needs real-time responsiveness with rich UI.

Reflex is a fully native, single C++ stack with no external dependencies. It delivers significantly smaller binary sizes, lower memory usage, and faster startup times than Qt, JUCE, or Flutter while giving you a developer experience closer to the web: live-reloading UI, stylesheet-driven design, and a dynamic property system with JSON integration.

The core idea: you shouldn't have to choose between native performance and fast iteration. Reflex gives you both.

Native performance without compromise

Everything compiles to a single native binary. No runtime, no VM overhead in production, no bundled browser engine. The result is measurably smaller, faster, and leaner than alternatives especially important for audio plugins and resource-constrained environments.

Modern developer experience in a native world

UI changes appear in under 1 second. Compare that to 30–60 second rebuild cycles in Qt or JUCE. Reflex achieves this through a split architecture: your C++ logic stays compiled for maximum performance, while a live-editable styles.txt file and optional VM layer let you iterate on layout, colours, spacing, and behaviour without recompiling.

The style system will feel familiar if you know CSS : declarative layers, named resources, states like hover and selected, and property bindings that update automatically. It's the speed and flexibility of web development, applied to native C++.

GPU-accelerated UI with GLX

GLX is Reflex's rendering engine, an immediate-mode, GPU-accelerated toolkit with a parent-driven layout model. It handles vector graphics, sub-pixel precision, smooth animations, responsive layout, and text styling entirely through its style system. You describe what the UI should look like; GLX handles the rendering.

How the architecture works

Reflex splits your application into two layers that work together:

C++ Apps

Compiled source files for maximum performance. Your business logic, audio processing, data handling ,all native C++. A live-editable styles.txt file acts as the bridge to instant UI iteration. Change a colour or font size, see it update immediately without recompiling.

VM Apps

Interpreted scripts with full live-reload ,even faster prototyping. The VM compiles to native code at build time, so there's zero runtime overhead in your shipping product.

Both modes share the same framework stack: Core utilities, SIMD math, async primitives, data serialization, file I/O, and the full GLX UI toolkit. Higher levels bring rapid-development paradigms; lower levels give you fine control when you need it.

What's in the framework

Reflex is modular .Use what you need, ignore what you don't:

ModuleWhat it does
CoreObject system, reference counting, containers, strings
SystemPlatform abstraction OS, threads, windows, renderer access
SIMDSIMD-accelerated math types for high-performance numeric work
DataPropertySet, JSON/XML serialization, encoding, hashing
FilePath utilities, file I/O, virtual filesystem
GLXGPU-accelerated UI layout, styling, events, animations, widgets
AsyncTask execution, progress tracking, timing utilities

Who it's for

Reflex's primary audience is pro-audio with built-in low-latency audio support, first-class plugin integration (VST3/AU), and commercial products like Granite and Nuance already shipping. But the framework extends to any cross-platform project requiring real-time responsiveness and rich UI.

Three audiences in particular: C++ developers wanting a lean, modern framework free from legacy bloat and preprocessor hacks; UI/UX designers working with C++ backends who want instant visual feedback; and audio plugin developers looking for a native alternative to embedded webviews.

Ready to get started?

5-minute setup. Start building high-performance apps with instant UI updates.