Skip to content

Install

Loom ships as a single Unity package tarball with the two npm packages bundled inside. There’s no public npm registry hop and no separate native binary download — everything you need is in the .tgz you drop into Packages/.

Prerequisites

  • Unity 6 (6000.x). Earlier versions are not tested.
  • Node 20+ on the host that runs the Editor. Required for the Loom → Sync UI Dependencies menu, which runs npm install for your UI app.
  • A UI app folder at <ProjectRoot>/UI/ with a package.json. If you don’t have one yet, see Your first screen.

Steps

  1. Drop the tarball. Copy com.loomgui-X.Y.Z.tgz into your project’s Packages/ directory.

  2. Reference it. Add the package to Packages/manifest.json:

    {
    "dependencies": {
    "com.loomgui": "file:com.loomgui-X.Y.Z.tgz"
    // ... your other dependencies
    }
    }

    Unity copies the package into Library/PackageCache/ on the next Editor open.

  3. Sync the UI npm packages. In the Editor, run Loom → Sync UI Dependencies. The menu:

    • Copies the bundled loomgui-bridge-*.tgz and loomgui-vite-plugin-*.tgz from the Unity package’s UI~/ folder into <ProjectRoot>/UI/.loom/.
    • Updates (or adds) the matching file:./.loom/... entries in <ProjectRoot>/UI/package.json.
    • Runs npm install in <ProjectRoot>/UI/. Output streams to the Unity Console; the menu returns immediately so the Editor doesn’t freeze.
  4. Restart Unity. Native plugins are pinned in Editor memory; a clean restart is required for the dylib/dll/so to load.

That’s it. The Editor orchestrator auto-spawns the Vite dev server on Play and points the in-game WebView at the served page. For subsequent plays, nothing additional is required.

Verifying the install

Open Window → General → Loom Doctor. The doctor reports:

  • Native plugin loaded
  • ABI version match
  • WS port bound
  • UI dir present
  • npm dependencies installed

If any of these report red, see Doctor reference.

Upgrading

When a newer com.loomgui-X.Y+1.Z.tgz lands, replace the tarball in Packages/, re-run Loom → Sync UI Dependencies (it detects the version bump and sweeps the old tarballs), and restart Unity. Same one button, every upgrade.