Development workflow
The normal Loom edit loop in Unity, Vite, mock mode, and player builds.
Loom is designed around a fast frontend loop while Unity stays the source of truth for gameplay state.
Normal Editor loop
- Press Play in Unity.
- Loom starts its managed UI dev server.
- The UI loads in the Loom overlay.
- Edit
.tsxor.cssfiles in the UI app. - Vite hot reloads the UI.
Working with coding agents or a terminal
You can run npm run dev in UI/ for a coding agent or a standalone browser.
That server remains independent and uses the mock bridge by default. Loom
always starts and owns a separate server on a free high loopback port; it never
adopts or terminates the terminal process. Both servers watch the same source,
so UI edits still update in both places.
While Play is running, open the browser URL shown by Loom Doctor or the status panel when a browser needs the live Unity debug connection. That URL includes the current session’s connection parameter. Use the terminal server when mock state is sufficient for visual iteration.
When to restart the dev server
Use:
Tools > Loom > Restart Dev Server
when you change Vite config, environment variables or dependency versions. This gives the UI a clean connection to the current Unity session.
When to restart Unity
Restart Unity after upgrading the Loom package or replacing native platform binaries. Unity keeps native plugins loaded for the life of the Editor process.
Browser-only UI work
Use Mock mode when you want to work on layout, animation, or visual states without entering Play mode. Mock mode lets designers and frontend developers iterate from the browser with scripted bridge data.
Player builds
In player builds, Loom loads a production bundle instead of the Vite dev server. Read Player builds before shipping.