Reflex Framework

Every ms you lost
to slow frameworks ends here.

Coming Soon

No spam. Launch notification only.

Reflex

Getting Started with Reflex

Reflex is a cross-platform C++ framework for building high-performance graphical applications and audio plugins. This guide will get you up and running in minutes.

Installation (5 Minutes)

  1. Install Visual Studio 2022 Community Edition
  2. Download and extract ReflexInstaller.zip
  3. Run ReflexInstaller.exe and install to a folder like reflex_libraries/
  4. Navigate to reflex_libraries/reflex/bin/tools/win/ and run ReflexProjectCreator.exe
  5. Select "Empty VM App", enter your vendor/project name, and click Create

💡 Explore the Documentation app in bin/tools for a working example you can learn from.

Two Development Approaches

Reflex offers four project types, but the two main development approaches are VM App (interpreted, live-edit) and C++ App (fully native). Start with the VM layer for rapid iteration, or dive into C++ for maximum control.

VM App Development

The VM layer is designed for rapid visual iteration. You work in a two-window environment where changes appear instantly.

Key files: view.c (UI structure), styles.txt (visual styling), interface.h (VM/C++ bridge)

C++ App Development

Full native development using the Reflex framework directly. You have complete control but need to manage memory and rebuild for every change.

Key files: app.cpp/h (logic), view.cpp/h (UI), entry.cpp (entry point), styles.txt

Documentation App

The Reflex Documentation app is an offline tool that gives you instant access to the complete API reference, function signatures, and code examples while you work.

Documentation App : Search functions, browse APIs, and view examples

Launch the Documentation App

Windows:

/reflex/bin/tools/win/ReflexDocumentation.exe

macOS:

/reflex/bin/tools/macos/ReflexDocumentation.dmg

What You Can Do

Search Functions

Instantly find any function, class, or method across all Reflex modules. Search by name, return type, or description.

Browse API Reference

Navigate the complete API organized by module: Core, System, Data, GLX, VM. View function signatures and parameters.

View Code Examples

See practical examples showing how to use functions in real code. Copy and paste directly into your project.

Work Offline

No internet required. Full documentation available while coding, even without network access.

Objects & References

Reflex introduces a first-class Object model with a dynamic property system, purpose-built for rapid iteration, live systems, and modern UI workflows. Everything visible in a Reflex application is an Object buttons, panels, text, images all arranged in a hierarchy similar to HTML's DOM.

Object Hierarchy

Window
└── View (root)
├── Header
│ └── Title
└── Content
├── Button
└── Slider

Every object has: one parent (except root), zero or more children, a position and size (determined by layout), and visual properties (determined by style).

Creating Objects (VM)

// Create a new object
auto box = new Object;
// Create and initialize with style
auto button = Init(new, styles#Button);
// Create a specific widget type
auto slider = CreateObject("RotarySlider");

Creating Objects (C++)

// Heap allocation (for dynamic objects)
auto box = New<GLX::Object>();
// Stack-based members (for permanent UI elements)
struct MyView : public View
{
GLX::Object m_header; // Created with MyView
GLX::Button m_save_button; // Created with MyView
};
// Factory pattern for widgets
auto menu = GLX::Menu::Create();

Module Overview

ModulePurpose
CoreObject, Reference, containers, Key32 hashing
SystemPlatform abstraction
DataPropertySet, JSON/XML, serialization
FileVirtual filesystem, ResourcePool
GLXGPU-accelerated UI library
VMLive-edit scripting layer
IDEDebug console, hot-reloading

Coming Soon

Reflex AI Builder

Build Reflex applications with natural language. Describe your UI, logic, and layout the AI handles the code.

Reflex Web Documentation

A fully searchable, always up-to-date web version of the Reflex API reference and guides.