Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

Immersive Web SDK

npm version npm download language license

Where every webpage can become a world.

The Immersive Web SDK makes building immersive web experiences as approachable as traditional web development. It's a complete collection of frameworks and tools built on Three.js with a high-performance Entity Component System, developer-first workflow with one-command setup and built-in emulation, and production-ready systems for grab interactions, locomotion, spatial audio, physics, and scene understanding.

Same code, two experiences: Run immersively in VR/AR headsets and automatically provide mouse-and-keyboard emulation on desktop browsers. No browser extensions, no special setup—anyone with a laptop can develop for the immersive web.

Getting Started

Create a new project with a single command:

npm create @iwsdk@latest

Or install into an existing project:

npm install @iwsdk/core three

Documentation

For guides, concepts, and API reference, visit: https://iwsdk.dev

Packages

PackageDescription
@iwsdk/coreCore SDK with ECS, systems, and WebXR integration
@iwsdk/createCLI for scaffolding new projects
@iwsdk/glxfGLXF scene format loader for Three.js
@iwsdk/locomotorLocomotion engine for Three.js WebXR
@iwsdk/xr-inputWebXR input system for Three.js
@iwsdk/vite-plugin-devXR emulation, AI agent tooling, and dev browser
@iwsdk/vite-plugin-gltf-optimizerGLTF/GLB optimization during build
@iwsdk/vite-plugin-uikitmlUIKitML to JSON compiler for spatial UI
@iwsdk/vite-plugin-metaspatialMeta Spatial Editor integration

Internal Packages

PackageDescription
@iwsdk/starter-assetsCDN-hosted templates and assets for CLI

Development

# Install dependencies
pnpm install

# Build all packages as tgz files (for examples to consume)
npm run build:tgz

# Run an example (fresh install from local tgz packages)
cd examples/locomotion && npm run fresh:dev

# Lint and format
pnpm run lint
pnpm run format

# Build a specific package
pnpm --filter @iwsdk/core build

Development Workflow

The examples use file: dependencies pointing to .tgz files built from local packages. This simulates how end-users will consume the packages from npm.

  1. npm run build:tgz - Builds all packages in dependency order and creates .tgz archives
  2. npm run fresh:dev (in example) - Cleans node_modules, reinstalls from tgz files, and starts dev server

This ensures examples always test against the latest local build.

License

IWSDK is licensed under the MIT License. See the LICENSE file for details.

Contributing

Contributions are welcome! Please review our Contributing Guidelines and Code of Conduct before submitting issues or pull requests.

Developer Terms

关于 About

WebXR made simple. Full-featured framework with interactions, locomotion, and spatial UI. Powered by Three.js.

语言 Languages

TypeScript87.9%
JavaScript10.4%
Shell1.7%
HTML0.0%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
157
Total Commits
峰值: 17次/周
Less
More

核心贡献者 Contributors