@vib3code/sdk 2.0.1

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.
Files changed (258) hide show
  1. package/CHANGELOG.md +118 -0
  2. package/DOCS/BLUEPRINT_EXECUTION_PLAN_2026-01-07.md +34 -0
  3. package/DOCS/CI_TESTING.md +38 -0
  4. package/DOCS/CLI_ONBOARDING.md +75 -0
  5. package/DOCS/CONTROL_REFERENCE.md +64 -0
  6. package/DOCS/DEV_TRACK_ANALYSIS.md +77 -0
  7. package/DOCS/DEV_TRACK_PLAN_2026-01-07.md +42 -0
  8. package/DOCS/DEV_TRACK_SESSION_2026-01-31.md +220 -0
  9. package/DOCS/ENV_SETUP.md +189 -0
  10. package/DOCS/EXPORT_FORMATS.md +417 -0
  11. package/DOCS/GPU_DISPOSAL_GUIDE.md +21 -0
  12. package/DOCS/LICENSING_TIERS.md +275 -0
  13. package/DOCS/MASTER_PLAN_2026-01-31.md +570 -0
  14. package/DOCS/OBS_SETUP_GUIDE.md +98 -0
  15. package/DOCS/PROJECT_SETUP.md +66 -0
  16. package/DOCS/RENDERER_LIFECYCLE.md +40 -0
  17. package/DOCS/REPO_MANIFEST.md +121 -0
  18. package/DOCS/SESSION_014_PLAN.md +195 -0
  19. package/DOCS/SESSION_LOG_2026-01-07.md +56 -0
  20. package/DOCS/STRATEGIC_BLUEPRINT_2026-01-07.md +72 -0
  21. package/DOCS/SYSTEM_AUDIT_2026-01-30.md +738 -0
  22. package/DOCS/SYSTEM_INVENTORY.md +520 -0
  23. package/DOCS/TELEMETRY_EXPORTS.md +34 -0
  24. package/DOCS/WEBGPU_STATUS.md +38 -0
  25. package/DOCS/XR_BENCHMARKS.md +608 -0
  26. package/LICENSE +21 -0
  27. package/README.md +426 -0
  28. package/docs/.nojekyll +0 -0
  29. package/docs/01-dissolution_of_euclidean_hegemony.html +346 -0
  30. package/docs/02-hyperspatial_ego_death.html +346 -0
  31. package/docs/03-post_cartesian_sublime.html +346 -0
  32. package/docs/04-crystalline_void_meditation.html +346 -0
  33. package/docs/05-quantum_decoherence_ballet.html +346 -0
  34. package/docs/06-dissolution_of_euclidean_hegemony.html +346 -0
  35. package/docs/07-hyperspatial_ego_death.html +346 -0
  36. package/docs/08-post_cartesian_sublime.html +346 -0
  37. package/docs/09-crystalline_void_meditation.html +346 -0
  38. package/docs/10-quantum_decoherence_ballet.html +346 -0
  39. package/docs/11-dissolution_of_euclidean_hegemony.html +346 -0
  40. package/docs/12-hyperspatial_ego_death.html +346 -0
  41. package/docs/13-post_cartesian_sublime.html +346 -0
  42. package/docs/index.html +794 -0
  43. package/docs/test-hub.html +441 -0
  44. package/docs/url-state.js +102 -0
  45. package/docs/vib3-exports/01-quantum-quantum-tetrahedron-lattice.html +489 -0
  46. package/docs/vib3-exports/02-quantum-quantum-hypersphere-matrix.html +489 -0
  47. package/docs/vib3-exports/03-quantum-quantum-hypertetra-fractal.html +489 -0
  48. package/docs/vib3-exports/04-faceted-faceted-crystal-structure.html +407 -0
  49. package/docs/vib3-exports/05-faceted-faceted-klein-bottle.html +407 -0
  50. package/docs/vib3-exports/06-faceted-faceted-hypertetra-torus.html +407 -0
  51. package/docs/vib3-exports/07-holographic-holographic-wave-field.html +457 -0
  52. package/docs/vib3-exports/08-holographic-holographic-hypersphere-sphere.html +457 -0
  53. package/docs/vib3-exports/09-holographic-holographic-hypertetra-crystal.html +457 -0
  54. package/docs/vib3-exports/index.html +238 -0
  55. package/docs/webgpu-live.html +702 -0
  56. package/package.json +367 -0
  57. package/src/advanced/AIPresetGenerator.js +777 -0
  58. package/src/advanced/MIDIController.js +703 -0
  59. package/src/advanced/OffscreenWorker.js +1051 -0
  60. package/src/advanced/WebGPUCompute.js +1051 -0
  61. package/src/advanced/WebXRRenderer.js +680 -0
  62. package/src/agent/cli/AgentCLI.js +615 -0
  63. package/src/agent/cli/index.js +14 -0
  64. package/src/agent/index.js +73 -0
  65. package/src/agent/mcp/MCPServer.js +950 -0
  66. package/src/agent/mcp/index.js +9 -0
  67. package/src/agent/mcp/tools.js +548 -0
  68. package/src/agent/telemetry/EventStream.js +669 -0
  69. package/src/agent/telemetry/Instrumentation.js +618 -0
  70. package/src/agent/telemetry/TelemetryExporters.js +427 -0
  71. package/src/agent/telemetry/TelemetryService.js +464 -0
  72. package/src/agent/telemetry/index.js +52 -0
  73. package/src/benchmarks/BenchmarkRunner.js +381 -0
  74. package/src/benchmarks/MetricsCollector.js +299 -0
  75. package/src/benchmarks/index.js +9 -0
  76. package/src/benchmarks/scenes.js +259 -0
  77. package/src/cli/index.js +675 -0
  78. package/src/config/ApiConfig.js +88 -0
  79. package/src/core/CanvasManager.js +217 -0
  80. package/src/core/ErrorReporter.js +117 -0
  81. package/src/core/ParameterMapper.js +333 -0
  82. package/src/core/Parameters.js +396 -0
  83. package/src/core/RendererContracts.js +200 -0
  84. package/src/core/UnifiedResourceManager.js +370 -0
  85. package/src/core/VIB3Engine.js +636 -0
  86. package/src/core/renderers/FacetedRendererAdapter.js +32 -0
  87. package/src/core/renderers/HolographicRendererAdapter.js +29 -0
  88. package/src/core/renderers/QuantumRendererAdapter.js +29 -0
  89. package/src/core/renderers/RendererLifecycleManager.js +63 -0
  90. package/src/creative/ColorPresetsSystem.js +980 -0
  91. package/src/creative/ParameterTimeline.js +1061 -0
  92. package/src/creative/PostProcessingPipeline.js +1113 -0
  93. package/src/creative/TransitionAnimator.js +683 -0
  94. package/src/export/CSSExporter.js +226 -0
  95. package/src/export/CardGeneratorBase.js +279 -0
  96. package/src/export/ExportManager.js +580 -0
  97. package/src/export/FacetedCardGenerator.js +279 -0
  98. package/src/export/HolographicCardGenerator.js +543 -0
  99. package/src/export/LottieExporter.js +552 -0
  100. package/src/export/QuantumCardGenerator.js +315 -0
  101. package/src/export/SVGExporter.js +519 -0
  102. package/src/export/ShaderExporter.js +903 -0
  103. package/src/export/TradingCardGenerator.js +3055 -0
  104. package/src/export/TradingCardManager.js +181 -0
  105. package/src/export/VIB3PackageExporter.js +559 -0
  106. package/src/export/index.js +14 -0
  107. package/src/export/systems/TradingCardSystemFaceted.js +494 -0
  108. package/src/export/systems/TradingCardSystemHolographic.js +452 -0
  109. package/src/export/systems/TradingCardSystemQuantum.js +411 -0
  110. package/src/faceted/FacetedSystem.js +963 -0
  111. package/src/features/CollectionManager.js +433 -0
  112. package/src/gallery/CollectionManager.js +240 -0
  113. package/src/gallery/GallerySystem.js +485 -0
  114. package/src/geometry/GeometryFactory.js +314 -0
  115. package/src/geometry/GeometryLibrary.js +72 -0
  116. package/src/geometry/buffers/BufferBuilder.js +338 -0
  117. package/src/geometry/buffers/index.js +18 -0
  118. package/src/geometry/generators/Crystal.js +420 -0
  119. package/src/geometry/generators/Fractal.js +298 -0
  120. package/src/geometry/generators/KleinBottle.js +197 -0
  121. package/src/geometry/generators/Sphere.js +192 -0
  122. package/src/geometry/generators/Tesseract.js +160 -0
  123. package/src/geometry/generators/Tetrahedron.js +225 -0
  124. package/src/geometry/generators/Torus.js +304 -0
  125. package/src/geometry/generators/Wave.js +341 -0
  126. package/src/geometry/index.js +142 -0
  127. package/src/geometry/warp/HypersphereCore.js +211 -0
  128. package/src/geometry/warp/HypertetraCore.js +386 -0
  129. package/src/geometry/warp/index.js +57 -0
  130. package/src/holograms/HolographicVisualizer.js +1073 -0
  131. package/src/holograms/RealHolographicSystem.js +966 -0
  132. package/src/holograms/variantRegistry.js +69 -0
  133. package/src/integrations/FigmaPlugin.js +854 -0
  134. package/src/integrations/OBSMode.js +754 -0
  135. package/src/integrations/ThreeJsPackage.js +660 -0
  136. package/src/integrations/TouchDesignerExport.js +552 -0
  137. package/src/integrations/frameworks/Vib3React.js +591 -0
  138. package/src/integrations/frameworks/Vib3Svelte.js +654 -0
  139. package/src/integrations/frameworks/Vib3Vue.js +628 -0
  140. package/src/llm/LLMParameterInterface.js +240 -0
  141. package/src/llm/LLMParameterUI.js +577 -0
  142. package/src/math/Mat4x4.js +708 -0
  143. package/src/math/Projection.js +341 -0
  144. package/src/math/Rotor4D.js +637 -0
  145. package/src/math/Vec4.js +476 -0
  146. package/src/math/constants.js +164 -0
  147. package/src/math/index.js +68 -0
  148. package/src/math/projections.js +54 -0
  149. package/src/math/rotations.js +196 -0
  150. package/src/quantum/QuantumEngine.js +906 -0
  151. package/src/quantum/QuantumVisualizer.js +1103 -0
  152. package/src/reactivity/ReactivityConfig.js +499 -0
  153. package/src/reactivity/ReactivityManager.js +586 -0
  154. package/src/reactivity/SpatialInputSystem.js +1783 -0
  155. package/src/reactivity/index.js +93 -0
  156. package/src/render/CommandBuffer.js +465 -0
  157. package/src/render/MultiCanvasBridge.js +340 -0
  158. package/src/render/RenderCommand.js +514 -0
  159. package/src/render/RenderResourceRegistry.js +523 -0
  160. package/src/render/RenderState.js +552 -0
  161. package/src/render/RenderTarget.js +512 -0
  162. package/src/render/ShaderLoader.js +253 -0
  163. package/src/render/ShaderProgram.js +599 -0
  164. package/src/render/UnifiedRenderBridge.js +496 -0
  165. package/src/render/backends/WebGLBackend.js +1108 -0
  166. package/src/render/backends/WebGPUBackend.js +1409 -0
  167. package/src/render/commands/CommandBufferExecutor.js +607 -0
  168. package/src/render/commands/RenderCommandBuffer.js +661 -0
  169. package/src/render/commands/index.js +17 -0
  170. package/src/render/index.js +367 -0
  171. package/src/scene/Disposable.js +498 -0
  172. package/src/scene/MemoryPool.js +618 -0
  173. package/src/scene/Node4D.js +697 -0
  174. package/src/scene/ResourceManager.js +599 -0
  175. package/src/scene/Scene4D.js +540 -0
  176. package/src/scene/index.js +98 -0
  177. package/src/schemas/error.schema.json +84 -0
  178. package/src/schemas/extension.schema.json +88 -0
  179. package/src/schemas/index.js +214 -0
  180. package/src/schemas/parameters.schema.json +142 -0
  181. package/src/schemas/tool-pack.schema.json +44 -0
  182. package/src/schemas/tool-response.schema.json +127 -0
  183. package/src/shaders/common/fullscreen.vert.glsl +5 -0
  184. package/src/shaders/common/fullscreen.vert.wgsl +17 -0
  185. package/src/shaders/common/geometry24.glsl +65 -0
  186. package/src/shaders/common/geometry24.wgsl +54 -0
  187. package/src/shaders/common/rotation4d.glsl +85 -0
  188. package/src/shaders/common/rotation4d.wgsl +86 -0
  189. package/src/shaders/common/uniforms.glsl +44 -0
  190. package/src/shaders/common/uniforms.wgsl +48 -0
  191. package/src/shaders/faceted/faceted.frag.glsl +129 -0
  192. package/src/shaders/faceted/faceted.frag.wgsl +164 -0
  193. package/src/shaders/holographic/holographic.frag.glsl +406 -0
  194. package/src/shaders/holographic/holographic.frag.wgsl +185 -0
  195. package/src/shaders/quantum/quantum.frag.glsl +513 -0
  196. package/src/shaders/quantum/quantum.frag.wgsl +361 -0
  197. package/src/testing/ParallelTestFramework.js +519 -0
  198. package/src/testing/__snapshots__/exportFormats.test.js.snap +24 -0
  199. package/src/testing/exportFormats.test.js +8 -0
  200. package/src/testing/projections.test.js +14 -0
  201. package/src/testing/rotations.test.js +37 -0
  202. package/src/ui/InteractivityMenu.js +516 -0
  203. package/src/ui/StatusManager.js +96 -0
  204. package/src/ui/adaptive/renderers/webgpu/BufferLayout.ts +252 -0
  205. package/src/ui/adaptive/renderers/webgpu/PolytopeInstanceBuffer.ts +144 -0
  206. package/src/ui/adaptive/renderers/webgpu/TripleBufferedUniform.ts +170 -0
  207. package/src/ui/adaptive/renderers/webgpu/WebGPURenderer.ts +735 -0
  208. package/src/ui/adaptive/renderers/webgpu/index.ts +112 -0
  209. package/src/variations/VariationManager.js +431 -0
  210. package/src/viewer/AudioReactivity.js +505 -0
  211. package/src/viewer/CardBending.js +481 -0
  212. package/src/viewer/GalleryUI.js +832 -0
  213. package/src/viewer/ReactivityManager.js +590 -0
  214. package/src/viewer/TradingCardExporter.js +600 -0
  215. package/src/viewer/ViewerPortal.js +374 -0
  216. package/src/viewer/index.js +12 -0
  217. package/src/wasm/WasmLoader.js +296 -0
  218. package/src/wasm/index.js +132 -0
  219. package/tools/agentic/mcpTools.js +88 -0
  220. package/tools/cli/agent-cli.js +92 -0
  221. package/tools/export/formats.js +24 -0
  222. package/tools/math/rotation-baseline.mjs +64 -0
  223. package/tools/shader-sync-verify.js +937 -0
  224. package/tools/telemetry/manifestPipeline.js +141 -0
  225. package/tools/telemetry/telemetryEvents.js +35 -0
  226. package/types/adaptive-sdk.d.ts +185 -0
  227. package/types/advanced/AIPresetGenerator.d.ts +81 -0
  228. package/types/advanced/MIDIController.d.ts +100 -0
  229. package/types/advanced/OffscreenWorker.d.ts +82 -0
  230. package/types/advanced/WebGPUCompute.d.ts +52 -0
  231. package/types/advanced/WebXRRenderer.d.ts +77 -0
  232. package/types/advanced/index.d.ts +46 -0
  233. package/types/core/ErrorReporter.d.ts +50 -0
  234. package/types/core/VIB3Engine.d.ts +204 -0
  235. package/types/creative/ColorPresetsSystem.d.ts +91 -0
  236. package/types/creative/ParameterTimeline.d.ts +74 -0
  237. package/types/creative/PostProcessingPipeline.d.ts +109 -0
  238. package/types/creative/TransitionAnimator.d.ts +71 -0
  239. package/types/creative/index.d.ts +35 -0
  240. package/types/integrations/FigmaPlugin.d.ts +46 -0
  241. package/types/integrations/OBSMode.d.ts +74 -0
  242. package/types/integrations/ThreeJsPackage.d.ts +62 -0
  243. package/types/integrations/TouchDesignerExport.d.ts +36 -0
  244. package/types/integrations/Vib3React.d.ts +74 -0
  245. package/types/integrations/Vib3Svelte.d.ts +63 -0
  246. package/types/integrations/Vib3Vue.d.ts +55 -0
  247. package/types/integrations/index.d.ts +52 -0
  248. package/types/reactivity/SpatialInputSystem.d.ts +173 -0
  249. package/types/reactivity/index.d.ts +394 -0
  250. package/types/render/CommandBuffer.d.ts +169 -0
  251. package/types/render/RenderCommand.d.ts +312 -0
  252. package/types/render/RenderState.d.ts +279 -0
  253. package/types/render/RenderTarget.d.ts +254 -0
  254. package/types/render/ShaderProgram.d.ts +277 -0
  255. package/types/render/UnifiedRenderBridge.d.ts +143 -0
  256. package/types/render/WebGLBackend.d.ts +168 -0
  257. package/types/render/WebGPUBackend.d.ts +186 -0
  258. package/types/render/index.d.ts +141 -0
@@ -0,0 +1,220 @@
1
+ # Dev Track Session — January 31, 2026
2
+
3
+ **Branch**: `claude/review-project-status-BwVbr`
4
+ **Phase**: E-1 through E-6 (Full Master Plan Execution)
5
+ **Ref**: `DOCS/MASTER_PLAN_2026-01-31.md`
6
+
7
+ ---
8
+
9
+ ## Session Goals
10
+
11
+ 1. Full codebase audit against Phase 5 platform hardening plan
12
+ 2. Create Master Plan consolidating all findings
13
+ 3. Execute Phase E-1 (Pre-Launch Blockers)
14
+ 4. Execute Phases E-2 through E-6 (remaining master plan items)
15
+
16
+ ---
17
+
18
+ ## Commit 1: Master Plan (`2c88aa7`)
19
+
20
+ - Created `DOCS/MASTER_PLAN_2026-01-31.md` — 570-line master plan with 43 action items across 6 phases
21
+ - Full codebase audit: 570+ files, 95K+ lines
22
+ - Identified 14 broken exports, missing LICENSE, missing CHANGELOG, missing TypeScript barrel
23
+
24
+ ## Commit 2: Phase E-1 Pre-Launch Blockers (`913419f`)
25
+
26
+ | # | Item | File(s) |
27
+ |---|------|---------|
28
+ | 1 | MIT LICENSE added | `LICENSE` |
29
+ | 2 | 14 broken exports removed | `package.json` — quaternion, pose, sensors, localization, product/telemetry |
30
+ | 3 | TypeScript barrel created | `types/adaptive-sdk.d.ts` |
31
+ | 4 | `npm run dev` alias | `package.json` scripts |
32
+ | 5 | `prepublishOnly` script | `package.json` scripts |
33
+ | 6 | CI publish workflow | `.github/workflows/publish.yml` |
34
+ | 7 | CHANGELOG.md | `CHANGELOG.md` — v1.0.0 + v2.0.0 |
35
+
36
+ ## Commit 3: Phases E-2 through E-6 (this commit)
37
+
38
+ ### E-2: Launch
39
+
40
+ | Item | File(s) | Notes |
41
+ |------|---------|-------|
42
+ | Landing page | `index.html` | Replaced 3-second meta-refresh with proper landing page: hero, code snippet, feature cards, nav links. Includes `prefers-reduced-motion`. |
43
+ | URL state support | `docs/url-state.js` | Reads/writes params to URL query string. Auto-applies on load. Shareable links. |
44
+ | README update | `README.md` | License badge → MIT. Added Quick Start with `npx @vib3code/sdk init`. Added `build:lib`, `storybook`, `verify:shaders` to dev commands. Updated license section. |
45
+
46
+ ### E-3: Adoption Friction
47
+
48
+ | Item | File(s) | Notes |
49
+ |------|---------|-------|
50
+ | CLI `init` command | `src/cli/index.js` | `vib3 init my-app` scaffolds package.json + index.html + main.js with VIB3Engine wired up. |
51
+ | React example | `examples/react/index.jsx` + `README.md` | System switching, geometry, hue controls via hooks. |
52
+ | Vanilla JS example | `examples/vanilla/index.html` | Minimal HTML+JS with controls. |
53
+ | Three.js example | `examples/threejs/index.html` | VIB3+ shader on a rotating Three.js cube, imports Three from CDN. |
54
+ | CDN/UMD build | `vite.config.js` | Added `--mode lib` path: produces `dist/lib/vib3.es.js` + `vib3.umd.js`. Added `build:lib` script. |
55
+ | Storybook config | `.storybook/main.js`, `.storybook/preview.js`, `stories/VIB3Engine.stories.js` | html-vite Storybook with dark background, system/geometry/hue/speed/chaos controls. |
56
+
57
+ ### E-4: Quality & Confidence
58
+
59
+ | Item | File(s) | Notes |
60
+ |------|---------|-------|
61
+ | SpatialInputSystem destroy() | — | Already exists (lines 1726-1752). Audit corrected. |
62
+ | Cross-browser Playwright | `playwright.config.js` | Added Firefox and WebKit (Safari) projects alongside Chromium. |
63
+ | Accessibility CSS | `styles/accessibility.css` | `prefers-reduced-motion`, `focus-visible` outlines, `forced-colors` support, skip-to-content link. |
64
+
65
+ ### E-5: Scale & Distribution
66
+
67
+ | Item | File(s) | Notes |
68
+ |------|---------|-------|
69
+ | WASM build CI | `.github/workflows/wasm-build.yml` | Triggers on cpp/ changes. Uses Emscripten 3.1.51. Uploads WASM artifacts. |
70
+ | OBS setup guide | `DOCS/OBS_SETUP_GUIDE.md` | 5-step visual guide: start VIB3+, add browser source, enable transparency, position overlay, control parameters. Includes troubleshooting table. |
71
+
72
+ ### E-6: Ecosystem & Community
73
+
74
+ | Item | File(s) | Notes |
75
+ |------|---------|-------|
76
+ | Bug report template | `.github/ISSUE_TEMPLATE/bug_report.md` | System, browser, OS fields. Repro steps. |
77
+ | Feature request template | `.github/ISSUE_TEMPLATE/feature_request.md` | Area checkboxes for all subsystems. |
78
+ | CONTRIBUTING.md | `CONTRIBUTING.md` | Getting started, dev commands, PR process, code style. |
79
+ | SECURITY.md | `SECURITY.md` | Responsible disclosure to Paul@clearseassolutions.com. Scope covers XSS, GPU exhaustion, WASM safety, MCP validation. |
80
+ | Opt-in error reporter | `src/core/ErrorReporter.js` | `window.onerror` + `unhandledrejection` capture. OFF by default. Rate-limited (50/session). Anonymized. Supports custom callback or HTTP POST. |
81
+
82
+ ---
83
+
84
+ ## Files Changed (All 3 Commits Combined)
85
+
86
+ ### Created (25 files)
87
+ | File | Purpose |
88
+ |------|---------|
89
+ | `DOCS/MASTER_PLAN_2026-01-31.md` | Master plan with 43 items |
90
+ | `DOCS/DEV_TRACK_SESSION_2026-01-31.md` | This session log |
91
+ | `DOCS/OBS_SETUP_GUIDE.md` | OBS integration guide |
92
+ | `LICENSE` | MIT License |
93
+ | `CHANGELOG.md` | v1.0.0 + v2.0.0 release notes |
94
+ | `CONTRIBUTING.md` | Contributor guide |
95
+ | `SECURITY.md` | Security policy |
96
+ | `types/adaptive-sdk.d.ts` | TypeScript barrel re-export |
97
+ | `.github/workflows/publish.yml` | npm publish on Git tag |
98
+ | `.github/workflows/wasm-build.yml` | WASM build CI |
99
+ | `.github/ISSUE_TEMPLATE/bug_report.md` | Bug report template |
100
+ | `.github/ISSUE_TEMPLATE/feature_request.md` | Feature request template |
101
+ | `.storybook/main.js` | Storybook config |
102
+ | `.storybook/preview.js` | Storybook preview |
103
+ | `stories/VIB3Engine.stories.js` | Engine stories |
104
+ | `docs/url-state.js` | URL state manager |
105
+ | `styles/accessibility.css` | Accessibility styles |
106
+ | `src/core/ErrorReporter.js` | Opt-in error telemetry |
107
+ | `examples/react/index.jsx` | React example |
108
+ | `examples/react/README.md` | React example docs |
109
+ | `examples/vanilla/index.html` | Vanilla JS example |
110
+ | `examples/threejs/index.html` | Three.js example |
111
+
112
+ ### Modified (5 files)
113
+ | File | Changes |
114
+ |------|---------|
115
+ | `package.json` | Removed 14 broken exports, license → MIT, added dev/prepublishOnly/build:lib scripts, added LICENSE+CHANGELOG to files |
116
+ | `index.html` | Replaced redirect with landing page |
117
+ | `vite.config.js` | Added library build mode (UMD + ESM) |
118
+ | `playwright.config.js` | Added Firefox + WebKit browser projects |
119
+ | `src/cli/index.js` | Added `init` command for project scaffolding |
120
+ | `README.md` | License badge, Quick Start, dev commands, license section |
121
+
122
+ ---
123
+
124
+ ## Items Requiring Manual / External Action
125
+
126
+ These items from the master plan cannot be completed in code and need your action:
127
+
128
+ | Item | Action Required |
129
+ |------|-----------------|
130
+ | npm publish | Configure `NPM_TOKEN` in GitHub repo secrets, push `v2.0.0` tag |
131
+ | Demo videos/GIFs | Screen record 30s of each system, add to `assets/` and README |
132
+ | Figma Community publish | Generate plugin bundle from `FigmaPlugin.js`, publish via Figma Dev Mode |
133
+ | GitHub Discussions | Enable in repo Settings → Features → Discussions |
134
+ | GitHub Projects board | Create in repo → Projects tab |
135
+ | Discord community | Create server externally |
136
+ | Blog posts | Content creation |
137
+ | TypeScript types for v2.0.0 modules | Large effort — 18 `.d.ts` files needed for creative/integrations/advanced |
138
+ | Unit tests for v2.0.0 modules | Large effort — 18 test files needed |
139
+
140
+ ---
141
+
142
+ ## Phase Status
143
+
144
+ | Phase | Items | Done | Remaining |
145
+ |-------|-------|------|-----------|
146
+ | E-1: Pre-Launch Blockers | 7 | 7 | 0 |
147
+ | E-2: Launch | 5 | 3 | 2 (videos, full demo polish) |
148
+ | E-3: Adoption | 5 | 5 | 0 (Vue/Svelte examples could be added) |
149
+ | E-4: Quality | 9 | 3 | 6 (unit tests, mobile, memory leak, benchmarks) |
150
+ | E-5: Scale | 6 | 2 | 4 (WebGPU primary, canary builds, Figma, Releases) |
151
+ | E-6: Ecosystem | 11 | 4 | 7 (gallery app, tutorial, API docs, community) |
152
+ | **Total** | **43** | **24** | **19** |
153
+
154
+ ---
155
+
156
+ ## Session 2 (continued) — Commits 4-6
157
+
158
+ ### Commit 4: WebGPU Primary Render Path (`c28886c`)
159
+
160
+ | Item | File(s) | Notes |
161
+ |------|---------|-------|
162
+ | WebGPU as primary render path | `src/core/VIB3Engine.js` | Flipped `preferWebGPU` default from `false` to `true`. Added WebGPU bridge init for all 3 systems (Quantum, Faceted, Holographic) with try/catch and WebGL fallback. |
163
+
164
+ ### Commit 5: TypeScript Types for v2.0.0 Modules (`74a8f43`)
165
+
166
+ 23 files changed, 1620 insertions:
167
+
168
+ | Module | File(s) | Notes |
169
+ |--------|---------|-------|
170
+ | SpatialInputSystem | `types/reactivity/SpatialInputSystem.d.ts` | 8 source types, 8 axes, full method signatures |
171
+ | Creative (4 files) | `types/creative/*.d.ts` + `index.d.ts` | ColorPresets, TransitionAnimator, PostProcessing, Timeline |
172
+ | Integrations (8 files) | `types/integrations/*.d.ts` + `index.d.ts` | React, Vue, Svelte, Figma, Three.js, TouchDesigner, OBS |
173
+ | Advanced (6 files) | `types/advanced/*.d.ts` + `index.d.ts` | WebXR, WebGPU Compute, MIDI, AI Presets, OffscreenWorker |
174
+ | ErrorReporter | `types/core/ErrorReporter.d.ts` | Error report payload, options |
175
+ | Barrel update | `types/adaptive-sdk.d.ts` | Re-exports all 18 new modules |
176
+ | Engine types fix | `types/core/VIB3Engine.d.ts` | preferWebGPU default → true |
177
+
178
+ ### Commit 6: Examples, Canary CI, and Unit Tests (`61fa5e7`)
179
+
180
+ 18 files changed, 1528 insertions:
181
+
182
+ | Item | File(s) | Notes |
183
+ |------|---------|-------|
184
+ | Vue 3 example | `examples/vue/index.js` + `README.md` | Composition API pattern with watchers |
185
+ | Svelte example | `examples/svelte/index.js` + `README.md` | onMount/onDestroy lifecycle pattern |
186
+ | Canary builds CI | `.github/workflows/canary.yml` | Publishes `@vib3code/sdk@canary` on every main push |
187
+ | 11 unit test files | `tests/creative/*.test.js`, `tests/advanced/*.test.js`, `tests/integrations/*.test.js`, `tests/reactivity/SpatialInputSystem.test.js`, `tests/core/ErrorReporter.test.js` | 148 tests, all passing |
188
+ | happy-dom | `package.json` | Added as devDependency for vitest environment |
189
+
190
+ ---
191
+
192
+ ## Updated Phase Status
193
+
194
+ | Phase | Items | Done | Remaining |
195
+ |-------|-------|------|-----------|
196
+ | E-1: Pre-Launch Blockers | 7 | 7 | 0 |
197
+ | E-2: Launch | 5 | 3 | 2 (videos, full demo polish) |
198
+ | E-3: Adoption | 5 | 5 | 0 — Vue + Svelte examples added |
199
+ | E-4: Quality | 9 | 5 | 4 (mobile, memory leak, benchmarks, flaky timing) |
200
+ | E-5: Scale | 6 | 4 | 2 (Figma publish, GitHub Releases) |
201
+ | E-6: Ecosystem | 11 | 4 | 7 (gallery app, tutorial, API docs, community) |
202
+ | **Total** | **43** | **28** | **15** |
203
+
204
+ ---
205
+
206
+ ## Items Still Requiring Manual Action
207
+
208
+ | Item | Action Required |
209
+ |------|-----------------|
210
+ | npm publish | Configure `NPM_TOKEN` in GitHub repo secrets, push `v2.0.0` tag |
211
+ | Demo videos/GIFs | Screen record 30s of each system, add to `assets/` and README |
212
+ | Figma Community publish | Generate plugin bundle from `FigmaPlugin.js`, publish via Figma Dev Mode |
213
+ | GitHub Discussions | Enable in repo Settings → Features → Discussions |
214
+ | GitHub Projects board | Create in repo → Projects tab |
215
+ | Discord community | Create server externally |
216
+ | Blog posts | Content creation |
217
+
218
+ ---
219
+
220
+ *Session end — January 31, 2026*
@@ -0,0 +1,189 @@
1
+ # Environment setup (Firebase, gcloud, Flutter, Android, GH CLI)
2
+
3
+ This doc provides a **copy/paste** bootstrap script to install and configure:
4
+ - Firebase CLI
5
+ - Google Cloud SDK (`gcloud`)
6
+ - Flutter SDK
7
+ - Android SDK (command-line tools)
8
+ - GitHub CLI (`gh`)
9
+
10
+ > ✅ Intended for Linux environments (Ubuntu/Debian).
11
+ > ✅ Replace placeholder values for auth and project configuration.
12
+
13
+ ## Placeholders to fill
14
+ - `<YOUR_GH_TOKEN>`: a GitHub personal access token for `gh auth login --with-token`.
15
+ - `<YOUR_GCP_PROJECT_ID>`: the Google Cloud project ID to set in `gcloud config set project`.
16
+ - `<keystore-password>`: the password for the Android signing keystore (release builds only).
17
+ - `<alias>`: the Android key alias inside the keystore (release builds only).
18
+ - `<alias-password>`: the password for the Android key alias (release builds only).
19
+ - `/path/to/keystore.jks`: the path to your Android signing keystore file (release builds only).
20
+
21
+ ### Where do the Android keystore values come from?
22
+ You only need a keystore when you’re **signing a release build** for distribution (Play Store, internal testing, etc.). For local development and emulator/device testing, you **do not** need these values—debug builds are signed automatically.
23
+
24
+ If you *do* need a release keystore later, you create it yourself (or your team provides one). The values come from the keystore you generate with `keytool`:
25
+ ```bash
26
+ keytool -genkeypair \
27
+ -alias <alias> \
28
+ -keyalg RSA \
29
+ -keysize 2048 \
30
+ -validity 10000 \
31
+ -keystore /path/to/keystore.jks
32
+ ```
33
+ During that prompt, you choose:
34
+ - the **keystore password** (`<keystore-password>`)
35
+ - the **key alias** (`<alias>`)
36
+ - the **alias password** (`<alias-password>`) (can be the same as the keystore password)
37
+
38
+ ### Emulator vs. cloud testing
39
+ - **Android Emulator (local):** best for day-to-day development and smoke testing.
40
+ - **Cloud testing (Firebase Test Lab, etc.):** best for automated device coverage in CI.
41
+
42
+ This guide includes only the SDK/tooling prerequisites; the sections below outline optional emulator and Test Lab setup.
43
+
44
+ ### Optional: Android emulator setup
45
+ If you want a local emulator for development:
46
+ ```bash
47
+ sdkmanager "system-images;android-34;google_apis;x86_64" "emulator"
48
+ avdmanager create avd -n vib3-pixel -k "system-images;android-34;google_apis;x86_64"
49
+ emulator -avd vib3-pixel
50
+ ```
51
+
52
+ ### Optional: Firebase Test Lab (cloud testing)
53
+ Enable Test Lab in your GCP project and run a sample instrumentation test:
54
+ ```bash
55
+ gcloud services enable testing.googleapis.com
56
+ gcloud firebase test android run \
57
+ --type instrumentation \
58
+ --app path/to/app.apk \
59
+ --test path/to/androidTest.apk \
60
+ --device model=Pixel2,version=30,locale=en,orientation=portrait
61
+ ```
62
+
63
+ ## Project configuration example
64
+ If your project ID is already created, you can set it like this:
65
+ ```bash
66
+ gcloud config set project gen-lang-client-0544919502
67
+ ```
68
+
69
+ For full project provisioning (APIs, Firebase initialization, and CI service accounts), see
70
+ [`DOCS/PROJECT_SETUP.md`](DOCS/PROJECT_SETUP.md).
71
+
72
+ ## One-shot setup script
73
+ ```bash
74
+ #!/usr/bin/env bash
75
+ set -euo pipefail
76
+
77
+ # -----------------------------
78
+ # 0) System deps (Linux)
79
+ # -----------------------------
80
+ sudo apt-get update -y
81
+ sudo apt-get install -y \
82
+ curl wget unzip xz-utils zip jq git \
83
+ ca-certificates gnupg lsb-release \
84
+ openjdk-17-jdk
85
+
86
+ # -----------------------------
87
+ # 1) Node.js + Corepack + pnpm
88
+ # -----------------------------
89
+ # If Node is not installed or you want to pin a version, uncomment:
90
+ # curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
91
+ # sudo apt-get install -y nodejs
92
+
93
+ node -v
94
+ corepack enable
95
+ corepack prepare pnpm@9.4.0 --activate
96
+ pnpm -v
97
+
98
+ # -----------------------------
99
+ # 2) Firebase CLI
100
+ # -----------------------------
101
+ pnpm add -g firebase-tools@13.12.0
102
+ firebase --version
103
+
104
+ # -----------------------------
105
+ # 3) Google Cloud SDK (gcloud)
106
+ # -----------------------------
107
+ if ! command -v gcloud >/dev/null 2>&1; then
108
+ echo "Installing Google Cloud SDK..."
109
+ curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg \
110
+ | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg
111
+ echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" \
112
+ | sudo tee /etc/apt/sources.list.d/google-cloud-sdk.list
113
+ sudo apt-get update -y && sudo apt-get install -y google-cloud-sdk
114
+ fi
115
+ gcloud --version
116
+
117
+ # -----------------------------
118
+ # 4) GitHub CLI
119
+ # -----------------------------
120
+ if ! command -v gh >/dev/null 2>&1; then
121
+ echo "Installing GitHub CLI..."
122
+ type -p curl >/dev/null || sudo apt-get install -y curl
123
+ curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg \
124
+ | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg
125
+ sudo chmod go+r /usr/share/keyrings/githubcli-archive-keyring.gpg
126
+ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" \
127
+ | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
128
+ sudo apt-get update -y && sudo apt-get install -y gh
129
+ fi
130
+ gh --version
131
+
132
+ # -----------------------------
133
+ # 5) Flutter + Android SDK
134
+ # -----------------------------
135
+ FLUTTER_VERSION="3.22.3"
136
+ FLUTTER_DIR="$HOME/flutter"
137
+ if [ ! -d "$FLUTTER_DIR" ]; then
138
+ echo "Installing Flutter ${FLUTTER_VERSION}..."
139
+ curl -L "https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_${FLUTTER_VERSION}-stable.tar.xz" -o /tmp/flutter.tar.xz
140
+ tar -xf /tmp/flutter.tar.xz -C "$HOME"
141
+ fi
142
+ export PATH="$FLUTTER_DIR/bin:$PATH"
143
+ flutter --version
144
+
145
+ ANDROID_HOME="$HOME/Android/Sdk"
146
+ ANDROID_CMDLINE="$ANDROID_HOME/cmdline-tools"
147
+ mkdir -p "$ANDROID_CMDLINE"
148
+ if [ ! -d "$ANDROID_CMDLINE/latest" ]; then
149
+ echo "Installing Android cmdline-tools..."
150
+ mkdir -p "$ANDROID_CMDLINE/latest"
151
+ curl -L "https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip" -o /tmp/cmdline-tools.zip
152
+ unzip -q /tmp/cmdline-tools.zip -d /tmp/cmdline-tools
153
+ mv /tmp/cmdline-tools/cmdline-tools/* "$ANDROID_CMDLINE/latest"
154
+ fi
155
+ export PATH="$ANDROID_CMDLINE/latest/bin:$ANDROID_HOME/platform-tools:$PATH"
156
+
157
+ yes | sdkmanager --licenses
158
+ sdkmanager "platform-tools" "platforms;android-34" "build-tools;34.0.0"
159
+
160
+ # -----------------------------
161
+ # 6) Project deps
162
+ # -----------------------------
163
+ pnpm install
164
+
165
+ # -----------------------------
166
+ # 7) Auth placeholders (fill in)
167
+ # -----------------------------
168
+ # --- GitHub CLI ---
169
+ # gh auth login --with-token <<'EOF'
170
+ # <YOUR_GH_TOKEN>
171
+ # EOF
172
+
173
+ # --- Firebase ---
174
+ # firebase login:ci --no-localhost
175
+ # firebase use --add
176
+
177
+ # --- GCloud ---
178
+ # gcloud auth login --no-launch-browser
179
+ # gcloud auth application-default login --no-launch-browser
180
+ # gcloud config set project <YOUR_GCP_PROJECT_ID>
181
+
182
+ # --- Android signing (if needed) ---
183
+ # export ANDROID_KEYSTORE_PATH="/path/to/keystore.jks"
184
+ # export ANDROID_KEYSTORE_PASSWORD="<keystore-password>"
185
+ # export ANDROID_KEY_ALIAS="<alias>"
186
+ # export ANDROID_KEY_PASSWORD="<alias-password>"
187
+
188
+ echo "✅ Setup complete"
189
+ ```