Player builds
In the Editor, Loom loads the UI from a live Vite dev server. In a player build, that dev server does not exist. Loom loads a production UI bundle from:
Assets/StreamingAssets/Loom/ Automatic build hook
Loom runs the UI production build during every Unity player build:
- Unity starts the player build.
- Loom runs
npm run buildin your UI directory. - Loom copies the output to
Assets/StreamingAssets/Loom/. - The player build includes that static bundle.
If the UI build fails, Loom aborts the player build.
Requirements
The build machine needs:
- Node.js 20+
- npm
- Installed UI dependencies (
node_modules) - A valid UI
package.jsonwith abuildscript
No Node.js in the shipped game
Node.js and Vite are development/build-time tools only. The shipped player loads
static HTML, CSS, JavaScript, fonts, and assets from StreamingAssets/Loom.
Verify the output
After a build, confirm that Assets/StreamingAssets/Loom/index.html exists and
that the folder includes the expected assets. If the Editor works but the player
is blank, this folder is the first thing to check.
For automated builds, see CI/CD.