@figurosity/consumer-three-dimension-tool 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,74 @@
1
+ # @figurosity/consumer-three-dimension-tool
2
+
3
+ 3D pose viewer for the Figurosity consumer frontend ecosystem. Mounts a
4
+ three.js scene against a base-pose envelope and exposes a `TdPage`
5
+ component plus the underlying Pinia stores.
6
+
7
+ This is the **Vite library successor** to the legacy
8
+ `@figurosity/quasar-app-extension-three-dimension-tool` (preserved at
9
+ `figurosity/three-dimension-tool` — never published, never installed in
10
+ `fe/app`). Restructured 2026-04-25 per Stage 4c of the consumer-frontend
11
+ cleanup plan and Phase 0 of the unified 360 + 3D viewer initiative.
12
+
13
+ ## Install
14
+
15
+ ```bash
16
+ npm install @figurosity/consumer-three-dimension-tool
17
+ ```
18
+
19
+ Peer dependencies: `vue`, `quasar`, `pinia`, `vue-router`, `vue-coloris`,
20
+ `three`, `lodash.isequal`, `@figurosity/toolbox`,
21
+ `@figurosity/consumer-controls`.
22
+
23
+ ## Public API
24
+
25
+ ```js
26
+ import {
27
+ TdPage,
28
+ use3dStore,
29
+ useColorsStore,
30
+ useControlsStore,
31
+ useFBXStore,
32
+ useGridStore,
33
+ useGroundStore,
34
+ useLightsStore,
35
+ useSceneStore,
36
+ } from '@figurosity/consumer-three-dimension-tool'
37
+ ```
38
+
39
+ The host app provides:
40
+
41
+ - A Pinia instance and a Quasar runtime
42
+ - The `Symbol.for('RelatedThreeDSection')` injection key (`provide(...)`)
43
+
44
+ The library produces 8 Pinia stores keyed `3d`, `3d-fbxs`, `3d-colors`,
45
+ `3d-controls`, `3d-grid`, `3d-ground`, `3d-lights`, `3d-scene`. Drive
46
+ scene state by calling `tdStore.setFromResponse(envelope)` with a
47
+ `{ entities, result }` envelope shape.
48
+
49
+ ## Local development
50
+
51
+ ```bash
52
+ npm install
53
+ npm run build # emits dist/consumer-three-dimension-tool.js (ESM)
54
+ npm run dev # opens the dev playground (Vite SPA in dev/)
55
+ npm test # vitest smoke suite
56
+ npm run lint # eslint
57
+ ```
58
+
59
+ The dev playground at `dev/` mounts `TdPage` against a fixture envelope.
60
+ It runs independently of `fe/app`. The fixture sets the FBX URL to
61
+ `null` — Phase 4 of the unified-viewer initiative replaces FBX with GLB
62
+ and ships a real model fixture.
63
+
64
+ ## Documentation
65
+
66
+ - `docs/tech-stack.md` — build configuration, dependency rationale
67
+ - `docs/quasar-usage.md` — Quasar primitives the package consumes (seed
68
+ for future coupling-reduction work)
69
+ - `docs/three-usage.md` — three.js imports, FBX loader sites, Phase-4
70
+ GLB migration surface
71
+
72
+ ## License
73
+
74
+ UNLICENSED — proprietary, not for redistribution.