create-threexrapp — Three.js + WebXR starter generator

This package scaffolds a ready-to-run Three.js + WebXR project that includes physics, a player controller, and VR helpers.

Important: do NOT run npm i create-threexrapp my-app — that syntax installs packages and will not create a new project.

Correct usage (recommended):

  • Using npx (recommended):
  • npx create-threexrapp my-app
  • or via npm init:
  • npm init create-threexrapp@latest my-app

What the command does:

  • Creates a new folder my-app/ in the current directory.
  • Copies these files into my-app/ at the top-level:
  • index.html
  • initializePhysicsAndPlayer.js
  • package.json (pre-populated with Vite dev script and dependencies)
  • playerController.js
  • README.md
  • scene1.js
  • style.css
  • vr.js
  • Copies static/ from your current working directory into my-app/static/ if present (recommended). If you don’t have local models, the package includes real sample models.
  • By default the CLI runs npm install inside the generated project so node_modules/ is created automatically.

Quick start after scaffold:

cd my-app
npm run dev

Flags:

  • –no-install — skip the automatic npm install step. Use this if you want to install deps later or via a different package manager.

Notes & best practices

  • Run the CLI from the folder that contains your static/ assets so your real models are copied into the scaffolded project. The expected model files are:
  • static/mainModel.glb
  • static/playerModel.glb
  • static/sky.hdr
  • If you don’t have models, the package includes sample models so the example app runs out-of-the-box.
  • The package is intended to be executed with npx or npm init — that is the standard and reliable way to scaffold projects.

Leave a comment

Your email address will not be published. Required fields are marked *