You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: add and unify README documentation across all packages
Summary:
add and unify README documentation across all packages
includes some formatting fixes with pnpm run format
Reviewed By: zjm-meta
Differential Revision: D89694178
fbshipit-source-id: 82a2835dad6f0d0766d019fd1310eb7962b351b0
Copy file name to clipboardExpand all lines: README.md
+54-18Lines changed: 54 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,46 +13,82 @@ The **Immersive Web SDK** makes building immersive web experiences as approachab
13
13
14
14
**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.
15
15
16
-
## Quick Start
16
+
## Getting Started
17
+
18
+
Create a new project with a single command:
17
19
18
20
```bash
19
-
# Install dependencies
20
-
pnpm install
21
+
npm create @iwsdk@latest
22
+
```
21
23
22
-
# Build and pack all packages
23
-
pnpm run build:tgz
24
+
Or install into an existing project:
24
25
25
-
# Run example
26
-
cd examples/locomotion && pnpm run fresh:dev
26
+
```bash
27
+
npm install @iwsdk/core three
27
28
```
28
29
30
+
## Documentation
31
+
32
+
For guides, concepts, and API reference, visit: **[https://iwsdk.dev](https://iwsdk.dev)**
|[@iwsdk/starter-assets](./packages/starter-assets)| CDN-hosted templates and assets for CLI |
53
+
29
54
## Development
30
55
31
56
```bash
32
-
# Lint and format code
57
+
# Install dependencies
58
+
pnpm install
59
+
60
+
# Build all packages as tgz files (for examples to consume)
61
+
npm run build:tgz
62
+
63
+
# Run an example (fresh install from local tgz packages)
64
+
cd examples/locomotion && npm run fresh:dev
65
+
66
+
# Lint and format
33
67
pnpm run lint
34
68
pnpm run format
35
69
36
-
# Build specific package
37
-
pnpm --filter '@iwsdk/core' run build
70
+
# Build a specific package
71
+
pnpm --filter @iwsdk/core build
38
72
```
39
73
40
-
##Documentation
74
+
### Development Workflow
41
75
42
-
For detailed information about using IWSDK, including step-by-step guides, architectural concepts, and complete API references, please visit our documentation site:
76
+
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
79
+
2.**`npm run fresh:dev`** (in example) - Cleans `node_modules`, reinstalls from tgz files, and starts dev server
80
+
81
+
This ensures examples always test against the latest local build.
45
82
46
83
## License
47
84
48
-
IWSDK is licensed under the MIT License. For more details, see the [LICENSE](https://github.com/facebook/immersive-web-sdk/blob/main/LICENSE) file in this repository.
85
+
IWSDK is licensed under the MIT License. See the [LICENSE](./LICENSE) file for details.
49
86
50
87
## Contributing
51
88
52
-
Your contributions are welcome! Please feel free to submit issues and pull requests. Before contributing, make sure to review our [Contributing Guidelines](https://github.com/facebook/immersive-web-sdk/blob/main/CONTRIBUTING.md) and [Code of Conduct](https://github.com/facebook/immersive-web-sdk/blob/main/CODE_OF_CONDUCT.md).
89
+
Contributions are welcome! Please review our [Contributing Guidelines](./CONTRIBUTING.md) and [Code of Conduct](./CODE_OF_CONDUCT.md) before submitting issues or pull requests.
53
90
54
91
## Developer Terms
55
92
56
-
- Open source Terms of Use - https://opensource.fb.com/legal/terms
57
-
58
-
- Open source Privacy Policy - https://opensource.fb.com/legal/privacy
93
+
-[Open Source Terms of Use](https://opensource.fb.com/legal/terms)
Applies one-time forces or velocity changes to a physics body. The component is automatically removed after application. See `immersive-web-sdk/packages/core/src/physics/physicsManipulation.ts:37-48`
159
165
160
166
**Properties**:
167
+
161
168
-`force`: Impulse force vector `[x, y, z]`
162
169
-`linearVelocity`: Set linear velocity directly `[x, y, z]`
163
170
-`angularVelocity`: Set angular velocity directly `[x, y, z]`
sceneUnderstanding:true, // Enable IWSDK scene understanding system
90
+
sceneUnderstanding:true, // Enable IWSDK scene understanding system
91
91
},
92
92
});
93
93
```
@@ -107,6 +107,7 @@ Planes are automatically created and updated by the `SceneUnderstandingSystem` a
107
107
Represents detected 3D geometry in the environment. See `immersive-web-sdk/packages/core/src/scene-understanding/mesh.ts:43-55`
108
108
109
109
**Properties**:
110
+
110
111
-`isBounded3D`: Whether this is a bounded object (true) or global mesh (false)
111
112
-`semanticLabel`: Semantic label from the device (e.g., "wall", "couch", "global mesh")
112
113
-`min`: Minimum bounding box corner `[x, y, z]`
@@ -120,9 +121,11 @@ Meshes are automatically created and updated by the `SceneUnderstandingSystem` h
120
121
Marks an entity to be anchored at a fixed position in the real world (will not move after recentering the view). See `immersive-web-sdk/packages/core/src/scene-understanding/anchor.ts:35-45`
121
122
122
123
**Properties**:
124
+
123
125
-`attached`: Boolean indicating if the entity is attached to the anchor group, default `false`
124
126
125
127
**Usage**:
128
+
126
129
```javascript
127
130
// Create an entity that stays fixed in the real world
0 commit comments