Quartz UI pages
Private preview · 0.57.0-devView Markdown
On this page

Install the private preview and render your first UI

This recipe uses the existing private quartzui-host repository at host revision 91fd772c282098157c4e7cded0263844f076e9fb and plugin revision 933db5171161ac5966e3b9bca3fd3a965f5399cc. Earlier independent testing built and rendered that pair on Windows. The later documentation review verified source, helper flags and reused-checkout integrity. It did not repeat the build or render: the exact-baseline verification checkout lacked compiled artifacts. This is not a clean-machine or fully executed reader-onboarding claim.

Prerequisites

You need authorized read access to both private repositories, Git and Git LFS, a working Windows C++ Unreal toolchain, and the matching Unreal engine. Host access does not grant plugin access. Obtain both repository URLs and access through your existing preview contact. This page does not offer a public download.

ComponentObserved environment, not a broad support promise
OS and targetWindows 11; Win64 Development Editor, D3D11
EngineHazelight AngelScript fork, UE 5.8.0, matching installed engine required
C++ toolsVisual Studio Community 2026 18.8.2; x64/x86 VC tools component found; MSVC folder 14.51.36231, compiler 14.51.36252 in prior build log
Windows SDK10.0.26100.0 headers installed and selected in the host build log
Git / LFS2.55.0.windows.3 / 3.7.1 observed during this documentation pass
Node / npm22.23.2 / 10.9.8 observed; not required to display the host's already built reference assets

For a new Windows development machine, select Visual Studio's Game development with C++ workload and its C++ compiler tools and Windows SDK, then follow the engine's prerequisite installer guidance. See Epic's Visual Studio setup guide. The installed AS fork remains the evidence target: the existing compiler is newer than its preferred 14.50.35717 and produces a warning. A clean-machine installation and stock Epic UE 5.8 have not been validated by this work.

Node 22+ and a compatible Chrome are additionally required by the later DevTools repair candidate, not by this baseline rendering step. The tested candidate used Chrome 153.0.8010.53. See debugging.

1. Check the checkout before setup

Inspect an existing checkout before setup. Preserve local changes, build outputs and caches. Set $previewRoot to the full path of your authorized reference-host checkout:

$previewRoot = Read-Host 'Full path to the reference-host checkout'
git -C $previewRoot rev-parse HEAD
git -C $previewRoot ls-tree HEAD Plugins/QuartzUI
git -C "$previewRoot/Plugins/QuartzUI" rev-parse HEAD
git -C $previewRoot status --short
git -C "$previewRoot/Plugins/QuartzUI" status --short

For this baseline, expect host 91fd772c282098157c4e7cded0263844f076e9fb and a 160000 gitlink to plugin 933db5171161ac5966e3b9bca3fd3a965f5399cc. If the working plugin revision differs from that gitlink, this checkout is not the documented baseline. Do not reset or run setup over an active candidate checkout; use an agreed baseline checkout and record its actual revisions.

For an authorized developer who has no existing host, the following is the private baseline clone recipe. The destination must be unused; choose the approved project root for that machine. The commands below were source-reviewed; the later documentation review did not repeat a fresh clone or new remote LFS hydration.

$previewRoot = Read-Host 'Full path to the reference-host checkout'
if (Test-Path -LiteralPath $previewRoot) { throw 'Destination exists; inspect and reuse it.' }
$hostRepositoryUrl = Read-Host 'Authorized host repository URL supplied with your preview access'
git clone --recurse-submodules $hostRepositoryUrl $previewRoot
if ($LASTEXITCODE -ne 0) { throw 'Private host/plugin clone failed.' }
git -C $previewRoot checkout --detach 91fd772c282098157c4e7cded0263844f076e9fb
if ($LASTEXITCODE -ne 0) { throw 'Baseline checkout failed.' }
powershell -NoProfile -ExecutionPolicy Bypass -File "$previewRoot/Tools/Setup-Checkout.ps1"
if ($LASTEXITCODE -ne 0) { throw 'Submodule/LFS setup failed.' }
git -C "$previewRoot/Plugins/QuartzUI" rev-parse HEAD
git -C $previewRoot lfs fsck
if ($LASTEXITCODE -ne 0) { throw 'LFS verification failed.' }

Setup-Checkout.ps1 installs repository-local LFS hooks, initializes the pinned submodule, configures recursive Git behavior and pulls LFS assets. It can change the plugin checkout to the committed host pin. Never run it blindly over an active repair checkout.

2. Verify the files

The checkout must contain:

  • QuartzUIHost.uproject, with the QuartzUI plugin enabled and a portable 5.8 engine association.
  • Plugins/QuartzUI/QuartzUI.uplugin; module identifiers remain QuartzUIRuntime, QuartzUIGAS, QuartzUIEditor, QuartzUITests.
  • Content/QuartzUIConfig/DA_QuartzUIReference.uasset, hydrated by LFS rather than left as a text pointer.
  • Content/QuartzUI/Apps/reference/index.html, its assets and quartzui.build.manifest (seven web resources total).

At this exact host baseline the app asset is 1,629 bytes and has SHA256 3ec27185ef39e69b1fb56f1c16de84c1335de6035e05a579e9afa08fd5ae6462. Compare with Get-FileHash -Algorithm SHA256. Do not manufacture or text-edit the .uasset.

The host already selects /Game/QuartzUIConfig/DA_QuartzUIReference.DA_QuartzUIReference, StartupPolicy=Automatic, DefaultScreen=main-menu, and StartupLayer=quartzui.menu in Config/DefaultGame.ini. No new widget Blueprint, migration commandlet, frontend installation or Vite server is needed for this fixture.

3. Build and audit

Use the installed engine explicitly; do not depend on a machine-specific project association. Keep the existing build outputs and DDC.

$engineRoot = Read-Host 'Full path to the matching installed Unreal engine root'
powershell -NoProfile -ExecutionPolicy Bypass -File "$previewRoot/Tools/Host.ps1" -Action Build -EngineRoot $engineRoot
if ($LASTEXITCODE -ne 0) { throw 'Editor build failed; inspect RepositoryBuild.log.' }
powershell -NoProfile -ExecutionPolicy Bypass -File "$previewRoot/Tools/Host.ps1" -Action Audit -EngineRoot $engineRoot
if ($LASTEXITCODE -ne 0) { throw 'Resource audit failed.' }

The build action targets QuartzUIHostEditor Win64 Development, with -WaitMutex -FromMsBuild -architecture=x64. Use this target for the reference host; other projects have their own targets. The audit calls QuartzUIValidate -Mode=Shipping; expect one app, seven admitted files and no issues. A Shipping-policy resource audit is not a cooked or packaged build.

Logs: Saved/Logs/RepositoryBuild.log, Saved/Logs/RepositoryAudit.log, and Saved/QuartzUI/repository-audit.json. Initial shader work can take several minutes; inspect progress before diagnosing a blank first frame.

4. Render the first UI

& "$engineRoot/Engine/Binaries/Win64/UnrealEditor.exe" "$previewRoot/QuartzUIHost.uproject" -d3d11 -nosplash -nop4

In the Editor, open the default Entry map if necessary and click Play. Wait for the reference menu. Confirm PLAY MULTIPLAYER, SERVERS and SHOP are visible and the native log records protocol 1 and application readiness (QuartzUI MVP Ready). This visible result, together with readiness, is the quickstart success criterion. Do not require a successful DevTools connection for the baseline: its browser-Origin failure is already known.

When mouse capture requires release, use the physical Shift+F1 chord. The later candidate QA could exercise native mouse selection but could not certify this physical-keyboard step using its synthetic input tools; the physical captured-mouse release step remains unverified for that candidate. Stop PIE when finished and close only the Editor session you started.

Optional baseline regression run:

powershell -NoProfile -ExecutionPolicy Bypass -File "$previewRoot/Tools/Host.ps1" -Action Test -EngineRoot $engineRoot
if ($LASTEXITCODE -ne 0) { throw 'Automation failed.' }

The baseline has eight focused policy/migration/shell tests. These do not establish native rendering or browser attachment by themselves. See debugging and troubleshooting for failure diagnosis.

Source anchors in the host: Tools/Setup-Checkout.ps1:10, Tools/Host.ps1:20, Config/DefaultGame.ini:4, Config/DefaultEngine.ini:1, QuartzUIHost.uproject:3. Earlier independent baseline testing supplies the execution evidence. The later documentation review did not repeat cloning, C++ compilation or PIE, and did not verify a custom integration example.