Quartz UI ↗
Browse docs
On this page
Private preview · 0.57.0-devView Markdown

Complete shipped-surface inventory

0.57.0-dev · beta source documentation. Native, Blueprint, Editor and rendering examples are source-reviewed, not executed in Unreal during this scan. See validation and limits.

Source revision: fe5b709ec900e282b50e58b819a25041945005f9. Machine: DESTROYER. Every public header has a reviewed integration recipe below; every defined type/delegate is separately indexed in reference/README.md. The complete tracked-file closure is in source provenance.

Public means game-facing; Advanced means a native extension seam; Internal is implementation infrastructure even if its header is public; Editor never belongs in packaged runtime game dependencies; Experimental is shipped opt-in prototype code. Examples are minimal integration recipes, not claims of executed Unreal tests.

QuartzUIContractCommandlet

Editor · QuartzUIEditor — Headless generation/check entry point.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: UnrealEditor-Cmd Host.uproject -run=QuartzUIContract -App=gameui -Output=path.ts.

Project integration: step-by-step guide; include QuartzUIContractCommandlet.h from QuartzUIEditor for direct native use.

Lifecycle: One commandlet invocation; needs compiled host.

Common mistake: Assuming generation also rebuilds frontend or recooks assets.

Pinned header (source: Source/QuartzUIEditor/Public/QuartzUIContractCommandlet.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIEditorDevServer

Editor · QuartzUIEditor — Validated project-local Vite process and redirect lifetime.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: Set project frontend root then Start/Stop Vite Dev Server.

Project integration: step-by-step guide; include QuartzUIEditorDevServer.h from QuartzUIEditor for direct native use.

Lifecycle: Editor owns and stops only its launched process tree.

Common mistake: Installing dependencies implicitly or silently changing ports.

Pinned header (source: Source/QuartzUIEditor/Public/QuartzUIEditorDevServer.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIEditorDevTools

Editor · QuartzUIEditor — Live browser target discovery and inspector launch.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: Tools > Quartz UI > Open DevTools after PIE creates a page.

Project integration: step-by-step guide; include QuartzUIEditorDevTools.h from QuartzUIEditor for direct native use.

Lifecycle: Async discovery cancels on module teardown.

Common mistake: Counting a blank inspector or port log as a passed connection.

Pinned header (source: Source/QuartzUIEditor/Public/QuartzUIEditorDevTools.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIEditorSettings

Editor · QuartzUIEditor — Machine-local DevTools, Node, Vite root/port and generation preferences.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: Configure Editor Preferences then restart for DevTools changes.

Project integration: step-by-step guide; include QuartzUIEditorSettings.h from QuartzUIEditor for direct native use.

Lifecycle: Editor user settings only.

Common mistake: Assuming legacy default frontend root matches the host.

Pinned header (source: Source/QuartzUIEditor/Public/QuartzUIEditorSettings.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIMigrateCommandlet

Editor · QuartzUIEditor — Headless migration/dry-run/rollback entry point.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: UnrealEditor-Cmd Host.uproject -run=QuartzUIMigrate -LegacyFixture -DryRun.

Project integration: step-by-step guide; include QuartzUIMigrateCommandlet.h from QuartzUIEditor for direct native use.

Lifecycle: Commandlet delegates to shared migration service.

Common mistake: Passing source without canonical build metadata.

Pinned header (source: Source/QuartzUIEditor/Public/QuartzUIMigrateCommandlet.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIProjectAudit

Editor · QuartzUIEditor — Canonical build evidence, localization hash and per-file UFS admission.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: QuartzUIValidate -Mode=Shipping; inspect audit result.

Project integration: step-by-step guide; include QuartzUIProjectAudit.h from QuartzUIEditor for direct native use.

Lifecycle: Current output is validated without Node/build side effects.

Common mistake: Confusing audit manifest with per-app build manifest.

Pinned header (source: Source/QuartzUIEditor/Public/QuartzUIProjectAudit.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIProjectMigration

Editor · QuartzUIEditor — No-overwrite project app migration with recoverable records.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: QuartzUIMigrate -Source=prebuilt -DryRun before real migration.

Project integration: step-by-step guide; include QuartzUIProjectMigration.h from QuartzUIEditor for direct native use.

Lifecycle: Records own changes; rollback retains created output.

Common mistake: Using deletion as conflict resolution or assuming rollback deletes assets.

Pinned header (source: Source/QuartzUIEditor/Public/QuartzUIProjectMigration.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUITypeScriptGenerator

Editor · QuartzUIEditor — Deterministic TypeScript schema emission and hashing.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: Use QuartzUIContract with selected app and -Check.

Project integration: step-by-step guide; include QuartzUITypeScriptGenerator.h from QuartzUIEditor for direct native use.

Lifecycle: Generation reads explicit reflected closure; frontend rebuild is separate.

Common mistake: Hand-editing generated declarations or using core identity for another app.

Pinned header (source: Source/QuartzUIEditor/Public/QuartzUITypeScriptGenerator.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIValidateCommandlet

Editor · QuartzUIEditor — Headless app/settings/staging audit entry point.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: UnrealEditor-Cmd Host.uproject -run=QuartzUIValidate -Mode=Shipping.

Project integration: step-by-step guide; include QuartzUIValidateCommandlet.h from QuartzUIEditor for direct native use.

Lifecycle: One commandlet invocation; evidence written to selected paths.

Common mistake: Claiming a green audit proves GPU or gameplay behavior.

Pinned header (source: Source/QuartzUIEditor/Public/QuartzUIValidateCommandlet.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIGASBindingComponent

Public · QuartzUIGAS — Optional GAS activation/retry component for exact player.

Prerequisites: Exact-player view plus native asset/source ownership; GAS additionally requires GameplayAbilities.

Minimal use: Enable GameplayAbilities; add component; leave action policy Disabled.

Project integration: step-by-step guide; include QuartzUIGASBindingComponent.h from QuartzUIGAS for direct native use.

Lifecycle: Component owns scope/retries/source subscriptions.

Common mistake: Enabling AllDiscovered without intended gameplay authority.

Pinned header (source: Source/QuartzUIGAS/Public/QuartzUIGASBindingComponent.h) · exact declarations · upstream guide (source: Documentation/GAS.md)

QuartzUIGASBindingScope

Advanced · QuartzUIGAS — GAS discovery lifetime, internal reserved endpoints and factory.

Prerequisites: Exact-player view plus native asset/source ownership; GAS additionally requires GameplayAbilities.

Minimal use: Create GAS Binding Scope; attach exact shell; detach on feature removal.

Project integration: step-by-step guide; include QuartzUIGASBindingScope.h from QuartzUIGAS for direct native use.

Lifecycle: Scope owns delegates, observed records, action endpoints and generations.

Common mistake: Constructing reserved endpoint classes independently.

Pinned header (source: Source/QuartzUIGAS/Public/QuartzUIGASBindingScope.h) · exact declarations · upstream guide (source: Documentation/GAS.md)

QuartzUIGASConfig

Public · QuartzUIGAS — Optional aliases, mappings, discovery mode and action permissions.

Prerequisites: Exact-player view plus native asset/source ownership; GAS additionally requires GameplayAbilities.

Minimal use: Create config only for custom aliases/permissions; validate mappings.

Project integration: step-by-step guide; include QuartzUIGASConfig.h from QuartzUIGAS for direct native use.

Lifecycle: Durable primary data asset; scope consumes a validated configuration.

Common mistake: Expecting mappings to load an ASC or allowing duplicate/invalid IDs.

Pinned header (source: Source/QuartzUIGAS/Public/QuartzUIGASConfig.h) · exact declarations · upstream guide (source: Documentation/GAS.md)

QuartzUIGASResolver

Public · QuartzUIGAS — Project override for exact-player AbilitySystemComponent lookup.

Prerequisites: Exact-player view plus native asset/source ownership; GAS additionally requires GameplayAbilities.

Minimal use: Subclass resolver for unusual ownership; assign to binding configuration.

Project integration: step-by-step guide; include QuartzUIGASResolver.h from QuartzUIGAS for direct native use.

Lifecycle: Resolved ASC must still belong to exact local player.

Common mistake: Returning a convenient foreign ASC or bypassing ownership guard.

Pinned header (source: Source/QuartzUIGAS/Public/QuartzUIGASResolver.h) · exact declarations · upstream guide (source: Documentation/GAS.md)

QuartzUIAccessibility

Internal · QuartzUIRuntime — Announcement payload normalization and native accessibility policy.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: client.request('quartzui.accessibility.announce', {message:'Saved'}).

Project integration: step-by-step guide; include QuartzUIAccessibility.h from QuartzUIRuntime for direct native use.

Lifecycle: Per-view rate/lifecycle gate; native handler stays private.

Common mistake: Claiming full OS DOM screen-reader traversal.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIAccessibility.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUIActions

Public · QuartzUIRuntime — Named action callbacks, contextual catalog and validation.

Prerequisites: Configured exact-player shell, QuartzUIRuntime dependency, one frontend client.

Minimal use: Register menu.continue, then SetActions with a localized FQuartzUIBoundAction.

Project integration: step-by-step guide; include QuartzUIActions.h from QuartzUIRuntime for direct native use.

Lifecycle: Handler registration belongs to gameplay owner; catalog is copied state.

Common mistake: Treating a displayed catalog entry as handler authorization.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIActions.h) · exact declarations · upstream guide (source: Documentation/SimpleGameUI.md)

QuartzUIApp

Public · QuartzUIRuntime — App identity, project ownership, entry page and per-app overrides.

Prerequisites: Compatible C++ Unreal 5.8 Win64 host, installed plugin and host-owned app files.

Minimal use: Create DA_GameUI; choose Project, gameui, Apps/gameui, index.html.

Project integration: step-by-step guide; include QuartzUIApp.h from QuartzUIRuntime for direct native use.

Lifecycle: Asset persists in the host; runtime copies a normalized definition.

Common mistake: Leaving the fixture defaults or expecting overrides without switches.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIApp.h) · exact declarations · upstream guide (source: Documentation/GettingStarted.md)

QuartzUIBindingComponentBase

Advanced · QuartzUIRuntime — Shared activation/retry transaction for provider and GAS components.

Prerequisites: Configured app, explicit reflected value types, saved assets and freshly generated app contract.

Minimal use: Derive through provider/GAS component for ordinary integrations.

Project integration: step-by-step guide; include QuartzUIBindingComponentBase.h from QuartzUIRuntime for direct native use.

Lifecycle: Component owns player/source retry subscriptions.

Common mistake: Starting unbounded retries or resolving the first world player.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIBindingComponentBase.h) · exact declarations · upstream guide (source: Documentation/ProjectContracts.md)

QuartzUIBindingScope

Public · QuartzUIRuntime — Atomic endpoints, subscriptions, initial baseline and cancellation generations.

Prerequisites: Configured app, explicit reflected value types, saved assets and freshly generated app contract.

Minimal use: AttachToShell(Player); create token; check IsCurrent; Detach.

Project integration: step-by-step guide; include QuartzUIBindingScope.h from QuartzUIRuntime for direct native use.

Lifecycle: Tokens invalidate before endpoint/source teardown.

Common mistake: Publishing events before initial baseline or using stale async work.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIBindingScope.h) · exact declarations · upstream guide (source: Documentation/ProjectContracts.md)

QuartzUIBlueprintLibrary

Public · QuartzUIRuntime — Blueprint nodes and exact-player FQuartzUI C++ facade.

Prerequisites: Configured exact-player shell, QuartzUIRuntime dependency, one frontend client.

Minimal use: FQuartzUI::SetIntegerValue(Player, TEXT("hud.ammo"), 30).

Project integration: step-by-step guide; include QuartzUIBlueprintLibrary.h from QuartzUIRuntime for direct native use.

Lifecycle: Uses subsystem-owned shell; unregister actions at owner teardown.

Common mistake: Omitting the player in split screen or ignoring false/null.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIBlueprintLibrary.h) · exact declarations · upstream guide (source: Documentation/SimpleGameUI.md)

QuartzUIBridge

Advanced · QuartzUIRuntime — Per-document native gateway, endpoint results and async request tokens.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: Game code uses typed endpoints; native adapters register on the view/widget.

Project integration: step-by-step guide; include QuartzUIBridge.h from QuartzUIRuntime for direct native use.

Lifecycle: One bridge per browser; session changes cancel requests.

Common mistake: Exposing arbitrary UObject methods or bypassing origin policy.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIBridge.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUIBrowserSession

Advanced · QuartzUIRuntime — Backend-neutral browser/render-surface interfaces and capability descriptors.

Prerequisites: Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials.

Minimal use: Use WorldSurface presenter; inspect descriptor Transfer field.

Project integration: step-by-step guide; include QuartzUIBrowserSession.h from QuartzUIRuntime for direct native use.

Lifecycle: Session owns bridge and external texture lifetime; close nonblocking.

Common mistake: Widening native texture casts to unsupported platform/RHI.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIBrowserSession.h) · exact declarations · upstream guide (source: Documentation/Rendering.md)

QuartzUIContractSchema

Internal · QuartzUIRuntime — Canonical schema construction shared by generator and runtime.

Prerequisites: Configured app, explicit reflected value types, saved assets and freshly generated app contract.

Minimal use: Invoke QuartzUIContract rather than hand-building schemas.

Project integration: step-by-step guide; include QuartzUIContractSchema.h from QuartzUIRuntime for direct native use.

Lifecycle: Stateless schema work over explicit reflected declarations.

Common mistake: Assuming arbitrary UObject scanning is allowed.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIContractSchema.h) · exact declarations · upstream guide (source: Documentation/ProjectContracts.md)

QuartzUICoreContract

Advanced · QuartzUIRuntime — Immutable middleware wire DTOs and message catalog.

Prerequisites: Configured app, explicit reflected value types, saved assets and freshly generated app contract.

Minimal use: Generate -App=core; use wire-catalog.md for subscriptions/requests.

Project integration: step-by-step guide; include QuartzUICoreContract.h from QuartzUIRuntime for direct native use.

Lifecycle: Core identity is process-stable; messages are value copies.

Common mistake: Copying core fingerprint into an app with providers.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUICoreContract.h) · exact declarations · upstream guide (source: Documentation/ProjectContracts.md)

QuartzUIDevelopmentPolicy

Internal · QuartzUIRuntime — Bounded development endpoint validation and app redirect registry.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: Use Editor-owned Vite Start/Stop workflow.

Project integration: step-by-step guide; include QuartzUIDevelopmentPolicy.h from QuartzUIRuntime for direct native use.

Lifecycle: Registry entry lives only while approved editor process is active.

Common mistake: Shipping loopback overrides or accepting arbitrary remote URLs.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIDevelopmentPolicy.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIDiagnostics

Public · QuartzUIRuntime — Process/view counters, byte estimates and caller-defined budget checks.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: GetRuntimeStats; compare baseline/current with EvaluateRuntimeBudget.

Project integration: step-by-step guide; include QuartzUIDiagnostics.h from QuartzUIRuntime for direct native use.

Lifecycle: Snapshot values; caller owns baseline and thresholds.

Common mistake: Calling estimates complete GPU memory or historical counters frame timing.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIDiagnostics.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIGASContract

Public · QuartzUIRuntime — Core immutable GAS state, event and request DTOs.

Prerequisites: Exact-player view plus native asset/source ownership; GAS additionally requires GameplayAbilities.

Minimal use: Subscribe to quartzui.gas.attributes after binding GAS.

Project integration: step-by-step guide; include QuartzUIGASContract.h from QuartzUIRuntime for direct native use.

Lifecycle: Snapshots retained; events transient; actual producer is optional GAS module.

Common mistake: Assuming presence of a DTO starts the integration.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIGASContract.h) · exact declarations · upstream guide (source: Documentation/GAS.md)

QuartzUIHtmlProjection

Experimental · QuartzUIRuntime — Retained HTML atlas compositor, anchors and geometry validation.

Prerequisites: Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials.

Minimal use: Create once; Update copied anchors; PublishContent only on artwork change.

Project integration: step-by-step guide; include QuartzUIHtmlProjection.h from QuartzUIRuntime for direct native use.

Lifecycle: Native owner destroys compositor before player/view lifetime ends.

Common mistake: Reusing cells without paint consistency or assuming world occlusion.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIHtmlProjection.h) · exact declarations · upstream guide (source: Documentation/Rendering.md)

QuartzUIHUD

Public · QuartzUIRuntime — GameMode HUD convenience observer/controller for canonical shell.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: Set HUDClass to AQuartzUIHUD; use Ready/Failed/Action/Stopped events.

Project integration: step-by-step guide; include QuartzUIHUD.h from QuartzUIRuntime for direct native use.

Lifecycle: HUD rebuild rebinds; explicit Stop closes shell.

Common mistake: Assuming EndPlay must destroy the shell.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIHUD.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUIInput

Public · QuartzUIRuntime — Input mode/config, navigation/action phases and resolved glyph assets.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: Use FQuartzUIInputConfig with ShowScreen; publish an input glyph profile.

Project integration: step-by-step guide; include QuartzUIInput.h from QuartzUIRuntime for direct native use.

Lifecycle: Config/event copies; project owns profile assets.

Common mistake: Browser vendor detection or using display glyphs as input authority.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIInput.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUIInputAdapter

Public · QuartzUIRuntime — Open native input provider for modality, glyphs and semantic actions.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: Subclass; RegisterInputAdapter; PublishGlyphProfile; unregister.

Project integration: step-by-step guide; include QuartzUIInputAdapter.h from QuartzUIRuntime for direct native use.

Lifecycle: Activation/context-change/deactivation own device subscriptions.

Common mistake: Forgetting travel/reassignment cleanup or exceeding eight adapters.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIInputAdapter.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUILayerHost

Public · QuartzUIRuntime — UMG layer presenter, exact-player routing, preferences and transitions.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: AttachToLayerStack; RegisterInputAdapter; SetPresentationPreferences.

Project integration: step-by-step guide; include QuartzUILayerHost.h from QuartzUIRuntime for direct native use.

Lifecycle: Detach deactivates adapters and presentation state.

Common mistake: Building a second conflicting input/visibility controller.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUILayerHost.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUILayerStack

Public · QuartzUIRuntime — Per-player ordered layer policy, retained views and back dismissal.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: RegisterLayer with FQuartzUILayerDefinition; PushView; PopView.

Project integration: step-by-step guide; include QuartzUILayerStack.h from QuartzUIRuntime for direct native use.

Lifecycle: Close may defer for exit animation; covered views remain retained.

Common mistake: Mutating another player's stack or forgetting close after nonclosing pop.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUILayerStack.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUILoadRecovery

Advanced · QuartzUIRuntime — Failed/retry/exhausted state and bounded retry policy.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: Use Retry UI after checking failure; default attempts 3, maximum 8.

Project integration: step-by-step guide; include QuartzUILoadRecovery.h from QuartzUIRuntime for direct native use.

Lifecycle: New navigation resets sequence; no reload loop.

Common mistake: Retrying contract/configuration errors indefinitely.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUILoadRecovery.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUILocalPlayerResolver

Internal · QuartzUIRuntime — Bounded exact-player ownership resolution shared by integrations.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: Supply a local controller to facade/component.

Project integration: step-by-step guide; include QuartzUILocalPlayerResolver.h from QuartzUIRuntime for direct native use.

Lifecycle: Resolves within current game instance and supported owner chain.

Common mistake: Falling back to a first player or scanning the world.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUILocalPlayerResolver.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUIMotionComponent

Public · QuartzUIRuntime — Camera heading, tilt, inertia and shake snapshot component.

Prerequisites: Exact-player view plus native asset/source ownership; GAS additionally requires GameplayAbilities.

Minimal use: Add to local PlayerController; AddMotionImpulse; subscribe quartzui.motion.

Project integration: step-by-step guide; include QuartzUIMotionComponent.h from QuartzUIRuntime for direct native use.

Lifecycle: Tick belongs to component; EndPlay clears state.

Common mistake: Expecting component to start shell or automatically implement reduced-motion UI.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIMotionComponent.h) · exact declarations · upstream guide (source: Documentation/GAS.md)

QuartzUINavigationPolicy

Internal · QuartzUIRuntime — Exact-origin main-frame/subframe navigation decisions.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: Use registered app URLs; inspect OnNavigationBlocked.

Project integration: step-by-step guide; include QuartzUINavigationPolicy.h from QuartzUIRuntime for direct native use.

Lifecycle: Pure decisions reused by active browser session.

Common mistake: Allowing popups or foreign origins as a workaround.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUINavigationPolicy.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIPagePolicy

Internal · QuartzUIRuntime — Browser bootstrap policy for page selection and native integration observers.

Prerequisites: Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials.

Minimal use: Use widget flags and data-quartzui-backdrop HTML marker.

Project integration: step-by-step guide; include QuartzUIPagePolicy.h from QuartzUIRuntime for direct native use.

Lifecycle: Applied to each completed document.

Common mistake: Patching generated bootstrap strings as game UI code.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIPagePolicy.h) · exact declarations · upstream guide (source: Documentation/Rendering.md)

QuartzUIPlatform

Public · QuartzUIRuntime — Unreal-owned platform ID/traits and validation.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: LayerHost->SetPlatformContext(Context).

Project integration: step-by-step guide; include QuartzUIPlatform.h from QuartzUIRuntime for direct native use.

Lifecycle: Copied coalesced exact-player state.

Common mistake: Using browser OS probing to select authoritative platform policy.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIPlatform.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUIPresentation

Public · QuartzUIRuntime — Culture, direction, text scale, accessibility preferences and normalization.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: SetPresentationPreferences; subscribe quartzui.presentation and apply in frontend.

Project integration: step-by-step guide; include QuartzUIPresentation.h from QuartzUIRuntime for direct native use.

Lifecycle: Native culture refresh; frontend subscription cleanup on unmount.

Common mistake: Assuming standalone transport applies DOM attributes itself.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIPresentation.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUIPresentationTarget

Advanced · QuartzUIRuntime — Interface that lets a logical view use UMG or direct presentation.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: Use existing widget/world-surface presenters; implement only for a new backend.

Project integration: step-by-step guide; include QuartzUIPresentationTarget.h from QuartzUIRuntime for direct native use.

Lifecycle: Single presenter owns attach/detach for one logical view.

Common mistake: Stealing an already-presented view or storing stale bridge pointers.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIPresentationTarget.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUIProjectContract

Public · QuartzUIRuntime — Explicit per-app state/event/action/request fragments and resolver.

Prerequisites: Configured app, explicit reflected value types, saved assets and freshly generated app contract.

Minimal use: Add fragment to RegisteredProjectContracts; regenerate app TypeScript.

Project integration: step-by-step guide; include QuartzUIProjectContract.h from QuartzUIRuntime for direct native use.

Lifecycle: App asset closure determines stable identity; save/recook after changes.

Common mistake: Mutating core catalog or registering same name across kinds.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIProjectContract.h) · exact declarations · upstream guide (source: Documentation/ProjectContracts.md)

QuartzUIProjectCookStaging

Internal · QuartzUIRuntime — Audited per-asset UFS emission and hash verification.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: Register apps; audit; cook through the plugin hook.

Project integration: step-by-step guide; include QuartzUIProjectCookStaging.h from QuartzUIRuntime for direct native use.

Lifecycle: Cook-owned admitted file list; no loose fallback.

Common mistake: Manually staging unreviewed app trees as NonUFS.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIProjectCookStaging.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIProjectSettings

Public · QuartzUIRuntime — Shareable shell, input, rendering, localization, security and cook configuration.

Prerequisites: Compatible C++ Unreal 5.8 Win64 host, installed plugin and host-owned app files.

Minimal use: Select DefaultApp and Manual startup, then Start UI Shell.

Project integration: step-by-step guide; include QuartzUIProjectSettings.h from QuartzUIRuntime for direct native use.

Lifecycle: Config=Game; saved in project defaults.

Common mistake: Putting Node paths or secrets into shared runtime policy.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIProjectSettings.h) · exact declarations · upstream guide (source: Documentation/GettingStarted.md)

QuartzUIProjectValidation

Advanced · QuartzUIRuntime — Settings validation, target strictness and actionable issue records.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: Run QuartzUIValidate; inspect Code/Field/Correction per issue.

Project integration: step-by-step guide; include QuartzUIProjectValidation.h from QuartzUIRuntime for direct native use.

Lifecycle: Pure validation over current settings/assets.

Common mistake: Ignoring individual errors because files exist.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIProjectValidation.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIProtocol

Internal · QuartzUIRuntime — Version-one envelopes, strict parsing, serialization and stable errors.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: Use QuartzUIClient.request rather than constructing raw envelopes.

Project integration: step-by-step guide; include QuartzUIProtocol.h from QuartzUIRuntime for direct native use.

Lifecycle: Bounded per-message values; request IDs/session correlate responses.

Common mistake: Unknown fields, oversized payloads, non-object payloads.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIProtocol.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUIProvider

Public · QuartzUIRuntime — Reflected gameplay facade, dirty state, delegates and callable operations.

Prerequisites: Configured app, explicit reflected value types, saved assets and freshly generated app contract.

Minimal use: Subclass; set ProviderId; register exact class; call MarkProviderDirty.

Project integration: step-by-step guide; include QuartzUIProvider.h from QuartzUIRuntime for direct native use.

Lifecycle: Bound/Unbound owns subscriptions; view owns provider attachment.

Common mistake: Exposing unsupported reflected helpers or overriding generic scope transaction hooks.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIProvider.h) · exact declarations · upstream guide (source: Documentation/ProjectContracts.md)

QuartzUIProviderBindingComponent

Public · QuartzUIRuntime — Actor-owned provider activation with exact-player resolution and retry.

Prerequisites: Configured app, explicit reflected value types, saved assets and freshly generated app contract.

Minimal use: Add component to local controller; assign ProviderSet; inspect binding state.

Project integration: step-by-step guide; include QuartzUIProviderBindingComponent.h from QuartzUIRuntime for direct native use.

Lifecycle: Component deactivation/destruction detaches providers, not shell.

Common mistake: Using an unrelated actor without a supported owner chain.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIProviderBindingComponent.h) · exact declarations · upstream guide (source: Documentation/ProjectContracts.md)

QuartzUIProviderCodec

Internal · QuartzUIRuntime — Strict provider snapshot and method/event value encoding.

Prerequisites: Configured app, explicit reflected value types, saved assets and freshly generated app contract.

Minimal use: Use provider reflection publication and generated methods.

Project integration: step-by-step guide; include QuartzUIProviderCodec.h from QuartzUIRuntime for direct native use.

Lifecycle: Copies bounded values for current binding.

Common mistake: Bypassing strict validation with direct reflection invocation.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIProviderCodec.h) · exact declarations · upstream guide (source: Documentation/ProjectContracts.md)

QuartzUIProviderSchema

Internal · QuartzUIRuntime — Provider field/event/method descriptors and reflected closure validation.

Prerequisites: Configured app, explicit reflected value types, saved assets and freshly generated app contract.

Minimal use: Validate a provider Blueprint and generate the registered app contract.

Project integration: step-by-step guide; include QuartzUIProviderSchema.h from QuartzUIRuntime for direct native use.

Lifecycle: Descriptors belong to generation/binding work.

Common mistake: Authoring descriptor structs as gameplay state.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIProviderSchema.h) · exact declarations · upstream guide (source: Documentation/ProjectContracts.md)

QuartzUIProviderSet

Public · QuartzUIRuntime — Reusable exact provider closure, activation policy and release handle.

Prerequisites: Configured app, explicit reflected value types, saved assets and freshly generated app contract.

Minimal use: Register a set on the app; select OnShellReady or bind/release manually.

Project integration: step-by-step guide; include QuartzUIProviderSet.h from QuartzUIRuntime for direct native use.

Lifecycle: Asset is durable; each handle belongs to one binding lifetime.

Common mistake: Confusing registration with activation or releasing automatic handles manually.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIProviderSet.h) · exact declarations · upstream guide (source: Documentation/ProjectContracts.md)

QuartzUIReadiness

Internal · QuartzUIRuntime — Document-plus-handshake readiness gate and timeout tracking.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: Wait for IsUIReady/OnReady after client.ping.

Project integration: step-by-step guide; include QuartzUIReadiness.h from QuartzUIRuntime for direct native use.

Lifecycle: Resets with navigation and session lifecycle.

Common mistake: Treating a loaded error document as aggregate Ready.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIReadiness.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUIResourceLoader

Internal · QuartzUIRuntime — Contained virtual-file loading for packaged app bytes.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: Build under project Content/QuartzUI/Apps; let resource service read it.

Project integration: step-by-step guide; include QuartzUIResourceLoader.h from QuartzUIRuntime for direct native use.

Lifecycle: Request-scoped bounded bytes from UFS.

Common mistake: Adding loose disk fallbacks or arbitrary file access.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIResourceLoader.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIResourceScheme

Advanced · QuartzUIRuntime — App-origin registry, request/response policy and bounded body stream.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: FQuartzUIResourceScheme::MakeUrl("gameui", "index.html").

Project integration: step-by-step guide; include QuartzUIResourceScheme.h from QuartzUIRuntime for direct native use.

Lifecycle: Process-immutable roots; Cancel releases response body.

Common mistake: Assuming tested range seam means stock CEF forwards Range headers.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIResourceScheme.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIRuntime

Internal · QuartzUIRuntime — Runtime logging/stat declaration header.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: Use LogQuartzUI and stat QuartzUI through documented diagnostics.

Project integration: step-by-step guide; include QuartzUIRuntime.h from QuartzUIRuntime for direct native use.

Lifecycle: Runtime module lifecycle owns registrations.

Common mistake: Treating module bootstrapping as a gameplay service object.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIRuntime.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUISceneBackdrop

Advanced · QuartzUIRuntime — Bounded regions, snapshots, blur plans and native RDG compositor.

Prerequisites: Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials.

Minimal use: Mark HTML data-quartzui-backdrop=frost; set exact player.

Project integration: step-by-step guide; include QuartzUISceneBackdrop.h from QuartzUIRuntime for direct native use.

Lifecycle: Per-view snapshots feed render-owned textures; teardown removes regions.

Common mistake: Expecting arbitrary CSS filters or cross-browser blur.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUISceneBackdrop.h) · exact declarations · upstream guide (source: Documentation/Rendering.md)

QuartzUISha256

Internal · QuartzUIRuntime — Dependency-free SHA-256 for contracts and cook identities.

Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Minimal use: Use generated identity/audit; HashUtf8 only for advanced tooling.

Project integration: step-by-step guide; include QuartzUISha256.h from QuartzUIRuntime for direct native use.

Lifecycle: Stateless byte hashing.

Common mistake: Hashing different canonical bytes or line endings.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUISha256.h) · exact declarations · upstream guide (source: Documentation/Development.md)

QuartzUIShellComponent

Public · QuartzUIRuntime — Shell convenience component for an existing HUD/controller.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: Add QuartzUI Shell; call Start UI Shell when using Manual startup.

Project integration: step-by-step guide; include QuartzUIShellComponent.h from QuartzUIRuntime for direct native use.

Lifecycle: Observes subsystem shell; host destruction detaches observation.

Common mistake: Creating additional browser widgets for the same canonical shell.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIShellComponent.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUISound

Public · QuartzUIRuntime — Sound cues, mappings, set stack, handlers and local-player subsystem.

Prerequisites: Exact-player view plus native asset/source ownership; GAS additionally requires GameplayAbilities.

Minimal use: Map ui.confirm then request quartzui.sound.play.

Project integration: step-by-step guide; include QuartzUISound.h from QuartzUIRuntime for direct native use.

Lifecycle: Balance set push/remove; subsystem shuts handlers/loads down.

Common mistake: Double playback through both listener and handler.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUISound.h) · exact declarations · upstream guide (source: Documentation/GAS.md)

QuartzUISpatialProjection

Public · QuartzUIRuntime — Exact-player batch world-to-viewport projection and Blueprint helper.

Prerequisites: Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials.

Minimal use: ProjectWorldLocations; pair output indices with stable IDs.

Project integration: step-by-step guide; include QuartzUISpatialProjection.h from QuartzUIRuntime for direct native use.

Lifecycle: Copied coordinates; host updates after camera pose.

Common mistake: Double DPI conversion or one browser per marker.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUISpatialProjection.h) · exact declarations · upstream guide (source: Documentation/Rendering.md)

QuartzUIStructCodec

Internal · QuartzUIRuntime — Exact declared DTO encode/decode for typed contracts.

Prerequisites: Configured app, explicit reflected value types, saved assets and freshly generated app contract.

Minimal use: Use Bind Typed UI Endpoint and Instanced Struct payloads.

Project integration: step-by-step guide; include QuartzUIStructCodec.h from QuartzUIRuntime for direct native use.

Lifecycle: Temporary copied DTO values; no object reference transport.

Common mistake: Confusing simple payload serializer with declared contract decoding.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIStructCodec.h) · exact declarations · upstream guide (source: Documentation/ProjectContracts.md)

QuartzUIStructPayload

Advanced · QuartzUIRuntime — Bounded data-only USTRUCT serialization for the simple facade.

Prerequisites: Configured exact-player shell, QuartzUIRuntime dependency, one frontend client.

Minimal use: Use FQuartzUI::PublishStruct(Player, Name, Value); inspect false.

Project integration: step-by-step guide; include QuartzUIStructPayload.h from QuartzUIRuntime for direct native use.

Lifecycle: Copies the supplied value; no live object ownership.

Common mistake: Passing UObject references, non-finite numbers or unsupported containers.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIStructPayload.h) · exact declarations · upstream guide (source: Documentation/SimpleGameUI.md)

QuartzUISubsystem

Public · QuartzUIRuntime — GameInstance owner of exact-player shells, views, layers and providers.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: StartShell(Player); CreateAppView for advanced document; CloseView when owned.

Project integration: step-by-step guide; include QuartzUISubsystem.h from QuartzUIRuntime for direct native use.

Lifecycle: Retained across travel; player removal and subsystem shutdown clean up.

Common mistake: Closing retained shell when only its HUD observer disappears.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUISubsystem.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUISurfaceTexture

Advanced · QuartzUIRuntime — Stable UTexture facade for the backend's existing output texture.

Prerequisites: Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials.

Minimal use: Use component-provided texture in the matching material parameter.

Project integration: step-by-step guide; include QuartzUISurfaceTexture.h from QuartzUIRuntime for direct native use.

Lifecycle: Session holds facade; generation-safe RHI rebinding.

Common mistake: Creating a new facade every frame or assuming no backend copy.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUISurfaceTexture.h) · exact declarations · upstream guide (source: Documentation/Rendering.md)

QuartzUITextureResources

Public · QuartzUIRuntime — View-owned static Texture2D snapshots and revocable PNG URLs.

Prerequisites: Exact-player view plus native asset/source ownership; GAS additionally requires GameplayAbilities.

Minimal use: GetTextureResources()->RegisterTexture(loadedTexture).

Project integration: step-by-step guide; include QuartzUITextureResources.h from QuartzUIRuntime for direct native use.

Lifecycle: View retains assets/bytes; ReleaseAll/close revokes URLs.

Common mistake: Treating empty URL as ready or snapshots as live GPU import.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUITextureResources.h) · exact declarations · upstream guide (source: Documentation/GAS.md)

QuartzUITypedEndpoint

Public · QuartzUIRuntime — Declared action/request handlers and one-shot typed request token.

Prerequisites: Configured app, explicit reflected value types, saved assets and freshly generated app contract.

Minimal use: Declare inventory.inspect, bind subclass, CompleteSuccess with exact DTO.

Project integration: step-by-step guide; include QuartzUITypedEndpoint.h from QuartzUIRuntime for direct native use.

Lifecycle: Unbind/navigation/timeouts cancel pending completions.

Common mistake: Returning wrong result type or completing twice.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUITypedEndpoint.h) · exact declarations · upstream guide (source: Documentation/ProjectContracts.md)

QuartzUIView

Public · QuartzUIRuntime — Logical app document, contract, provider closure and one presentation.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: Obtain from subsystem; AttachToView on a presenter.

Project integration: step-by-step guide; include QuartzUIView.h from QuartzUIRuntime for direct native use.

Lifecycle: Subsystem manages logical lifetime; presentation can change.

Common mistake: Attaching two presenters or holding foreign-player ownership.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIView.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUIWidget

Public · QuartzUIRuntime — UMG presenter and advanced standalone browser policy.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: CreateAppView then AttachToView; observe OnReady.

Project integration: step-by-step guide; include QuartzUIWidget.h from QuartzUIRuntime for direct native use.

Lifecycle: Slate resources may rebuild; logical view remains subsystem-owned.

Common mistake: Using OnLoadCompleted as Ready or expecting all native methods as Blueprint nodes.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIWidget.h) · exact declarations · upstream guide (source: Documentation/API.md)

QuartzUIWidgetComponent

Public · QuartzUIRuntime — Passive compatibility spatial browser through UWidgetComponent.

Prerequisites: Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials.

Minimal use: Add QuartzUI Spatial Widget; InitializeApp(App, Player).

Project integration: step-by-step guide; include QuartzUIWidgetComponent.h from QuartzUIRuntime for direct native use.

Lifecycle: Owns view only when initialized as owner; releases on teardown.

Common mistake: Expecting pointer/IME support or ignoring second render-target cost.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIWidgetComponent.h) · exact declarations · upstream guide (source: Documentation/Rendering.md)

QuartzUIWorldSurfaceComponent

Public · QuartzUIRuntime — Passive browser texture on ordinary world mesh geometry.

Prerequisites: Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials.

Minimal use: Add Direct World Surface; InitializeApp; match material parameter.

Project integration: step-by-step guide; include QuartzUIWorldSurfaceComponent.h from QuartzUIRuntime for direct native use.

Lifecycle: Component owns session/heartbeat/suspension; ReleaseQuartzUI closes owned resources.

Common mistake: Using raster size as world size or claiming interactive UV input.

Pinned header (source: Source/QuartzUIRuntime/Public/QuartzUIWorldSurfaceComponent.h) · exact declarations · upstream guide (source: Documentation/Rendering.md)

SQuartzUIBrowser

Advanced · QuartzUIRuntime — Slate browser wrapper, native focus, policy, fallback and bridge access.

Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Minimal use: Embed in native Slate with exact OwningLocalPlayer and app policy.

Project integration: step-by-step guide; include SQuartzUIBrowser.h from QuartzUIRuntime for direct native use.

Lifecycle: Slate wrapper owns browser/text-input binding and bridge.

Common mistake: Scaling a low-resolution raster or bypassing lifetime with raw CEF access.

Pinned header (source: Source/QuartzUIRuntime/Public/SQuartzUIBrowser.h) · exact declarations · upstream guide (source: Documentation/API.md)

Client modules, tools, and non-type integrations

QuartzUIClient

Public. Prerequisites: Configured exact-player shell, QuartzUIRuntime dependency, one frontend client.

Purpose and minimal use: One document-owned protocol transport; construct with generated hash, subscribe, await ping, request.

Integration: guide; pinned implementation (source: Resources/Client/quartzui.mjs).

Lifecycle: Unsubscribe component listeners; dispose at document teardown. Avoid: Creating clients inside React renders or expecting domain decoders.

React hook

Public. Prerequisites: Configured exact-player shell, QuartzUIRuntime dependency, one frontend client.

Purpose and minimal use: useQuartzUIState(client, name); host supplies React 18+ and bundles peer dependency.

Integration: guide; pinned implementation (source: Resources/Client/react.mjs).

Lifecycle: Hook cleans subscription on unmount/topic change. Avoid: Shipping JSX/bare npm imports or another React copy.

React external store

Public. Prerequisites: Configured exact-player shell, QuartzUIRuntime dependency, one frontend client.

Purpose and minimal use: createStateStore(client, name) exposes stable retained snapshot subscription.

Integration: guide; pinned implementation (source: Resources/Client/react-store.mjs).

Lifecycle: Returned unsubscribe detaches listener. Avoid: Cloning getSnapshot results on every read.

Back ordering

Public. Prerequisites: Exact local player and configured app; Slate/UMG dependencies for native presentation work.

Purpose and minimal use: resolveBackBeforeTransition(id, plan, payload => client.request('quartzui.back.resolve', payload)).

Integration: guide; pinned implementation (source: Resources/Client/back-navigation.mjs).

Lifecycle: Deferred actions run only after acknowledgment. Avoid: Changing native context before Back acknowledgment.

PresentationClock

Public. Prerequisites: Configured exact-player shell, QuartzUIRuntime dependency, one frontend client.

Purpose and minimal use: sample native time then read from the display animation loop.

Integration: guide; pinned implementation (source: Resources/Client/presentation-clock.mjs).

Lifecycle: Component owner cancels loop; phase/reset/finish snap. Avoid: Extrapolating beyond latest authoritative time.

Texture lookups

Public. Prerequisites: Exact-player view plus native asset/source ownership; GAS additionally requires GameplayAbilities.

Purpose and minimal use: textureResource for baked manifest; unrealTextureResource for issued URL.

Integration: guide; pinned implementation (source: Resources/Client/texture-resources.mjs).

Lifecycle: Manifest belongs to app; native URL lifetime belongs to view. Avoid: Asset paths as browser URLs or unchecked cross-origin URLs.

Texture bake

Editor. Prerequisites: Exact-player view plus native asset/source ownership; GAS additionally requires GameplayAbilities.

Purpose and minimal use: plan/bake with explicit IDs/object paths; unreal_exporter in Unreal Python.

Integration: guide; pinned implementation (source: Scripts/texture_resources.py).

Lifecycle: Owned output changes only after successful batch. Avoid: Using cooked-only source with editor exporter or unowned output roots.

Skill linker

Tool. Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Purpose and minimal use: --project host --check verifies links; explicit install omits --check.

Integration: guide; pinned implementation (source: Scripts/link_agent_skills.py).

Lifecycle: Host tracks links and plugin pin; helper never overwrites conflicts. Avoid: Expecting symlink creation without Windows capability.

Repository validator

Tool. Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Purpose and minimal use: Run before source delivery; -AllowBuildOutput only for mounted Git checkout.

Integration: guide; pinned implementation (source: Scripts/ValidateRepository.ps1).

Lifecycle: Read-only gate except process output. Avoid: Deleting caches to satisfy layout validation.

Identity redirects

Integration. Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Purpose and minimal use: Keep shipped redirects while loading old serialized assets; resave in Editor.

Integration: guide; pinned implementation (source: Config/DefaultQuartzUI.ini).

Lifecycle: Compatibility config ships with plugin. Avoid: Editing binary assets or expecting redirects to rewrite C++/JS/config strings.

Game UI design skill

Authoring. Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Purpose and minimal use: Read with host UI constraints for design work.

Integration: guide; pinned implementation (source: Skills/game-ui-design/SKILL.md).

Lifecycle: Instructions follow linked plugin revision. Avoid: Treating example research/artwork as licensed production assets.

Quartz implementation skill

Authoring. Prerequisites: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target.

Purpose and minimal use: Read for native/frontend integration and validation workflow.

Integration: guide; pinned implementation (source: Skills/quartz-ui-implementation/SKILL.md).

Lifecycle: Host retains project-specific build and ownership policy. Avoid: Treating skill instructions as runtime enforcement.

Modules, fixtures, and private implementation

GroupShipped roleIntegration and lifetime
QuartzUIRuntimeClientOnly, PostConfigInitGame UI public API; module owns runtime registrations and browser integration
QuartzUIGASClientOnly, LoadingPhase NoneOptional runtime loads it when GameplayAbilities is enabled; do not force server dependencies
QuartzUIEditorEditor, PreDefaultTools, commandlets, validation, migration; never depend on it from runtime-only code
QuartzUITestsDeveloperTool, Editor-onlyAutomation evidence, not a standalone host or game dependency
Resources/WebCompiled compatibility/effects/renderer fixturesUseful for regression comparison; do not edit as a customer frontend
ShadersNative backdrop/projection implementationRegistered and driven by runtime; no project-side shader API promised
Source/*/PrivateImplementations, reflection metadata, input processor, frame probe, render resources and testsOwned by public services; full paths and hashes in source manifest; do not include private headers
Resources/Client/.test.mjs and Scripts/test_.pyStandalone regression suitesDevelopment-only; fake gateways/exporters do not prove a host runtime
Documentation and CHANGELOGUpstream guides and historical evidencesource provenance; read limitations before reusing claims

External or planned, not shipped here

CommonUI, CommonInput, Enhanced Input, Modular Gameplay and AngelScript-specific adapters are referenced by upstream prose but have no module/source payload here. Lyra/Cubegame applications, probes and host scripts are external. Plugin-owned CEF is another branch. Live GPU image import, general interactive world surfaces, arbitrary cross-view blur and full DOM OS accessibility are not delivered capabilities. HTML projection is the explicitly marked shipped prototype, not a planned API.