A description, not a native view
Widgets are immutable C# values. Rebuilding one does not automatically recreate its UI Toolkit element.
LumaFlow documentation
A practical route from an empty Unity scene to a maintainable reactive interface. Every section tells you what to do, why it matters and where to continue.
You do not need to study the complete API before building an application. Start with one working screen, then learn the contracts that prevent layout and lifecycle bugs.
Start here
Install LumaFlow, mount the application, create a counter and dispose the mount correctly.
Understand
Learn what is immutable, what is retained and what actually rebuilds when state changes.
Scale
Choose keys correctly and use virtualization for large, dynamic collections.
Structure
Keep routes, dialogs and popovers outside Build and control their lifetime explicitly.
Each guide focuses on one production concern and the failure modes you are likely to encounter in Unity.
Inputs, tabs, validation, focus and product-level styling.
A11ySemantics, keyboard navigation, reduced motion and application strings.
DXInspector, diagnostics, testing and Play Mode recompilation.
RulesBounded axes, flex children, scrolling and responsive composition.
APISearch public types and signatures when you know what you need.
Widgets are immutable C# values. Rebuilding one does not automatically recreate its UI Toolkit element.
It owns lifecycle and reconciliation. Compatible updates reuse the same VisualElement.
Only mounted branches that read a state value rebuild when it changes.
Keys preserve logical identity when children are reordered, inserted or removed.