@vib3code/sdk 2.0.1 → 2.0.3-canary.6f35b4c

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 (96) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/DOCS/AGENT_HARNESS_ARCHITECTURE.md +243 -0
  3. package/DOCS/CLI_ONBOARDING.md +1 -1
  4. package/DOCS/CROSS_SITE_DESIGN_PATTERNS.md +117 -0
  5. package/DOCS/EPIC_SCROLL_EVENTS.md +773 -0
  6. package/DOCS/HANDOFF_LANDING_PAGE.md +154 -0
  7. package/DOCS/HANDOFF_SDK_DEVELOPMENT.md +493 -0
  8. package/DOCS/MULTIVIZ_CHOREOGRAPHY_PATTERNS.md +937 -0
  9. package/DOCS/PRODUCT_STRATEGY.md +63 -0
  10. package/DOCS/README.md +103 -0
  11. package/DOCS/REFERENCE_SCROLL_ANALYSIS.md +97 -0
  12. package/DOCS/ROADMAP.md +111 -0
  13. package/DOCS/SCROLL_TIMELINE_v3.md +269 -0
  14. package/DOCS/SITE_REFACTOR_PLAN.md +100 -0
  15. package/DOCS/STATUS.md +24 -0
  16. package/DOCS/SYSTEM_INVENTORY.md +33 -30
  17. package/DOCS/VISUAL_ANALYSIS_CLICKERSS.md +85 -0
  18. package/DOCS/VISUAL_ANALYSIS_FACETAD.md +133 -0
  19. package/DOCS/VISUAL_ANALYSIS_SIMONE.md +95 -0
  20. package/DOCS/VISUAL_ANALYSIS_TABLESIDE.md +86 -0
  21. package/DOCS/{BLUEPRINT_EXECUTION_PLAN_2026-01-07.md → archive/BLUEPRINT_EXECUTION_PLAN_2026-01-07.md} +1 -1
  22. package/DOCS/{DEV_TRACK_ANALYSIS.md → archive/DEV_TRACK_ANALYSIS.md} +3 -0
  23. package/DOCS/{SYSTEM_AUDIT_2026-01-30.md → archive/SYSTEM_AUDIT_2026-01-30.md} +3 -0
  24. package/DOCS/{DEV_TRACK_SESSION_2026-01-31.md → dev-tracks/DEV_TRACK_SESSION_2026-01-31.md} +1 -1
  25. package/DOCS/dev-tracks/DEV_TRACK_SESSION_2026-02-06.md +231 -0
  26. package/DOCS/dev-tracks/DEV_TRACK_SESSION_2026-02-13.md +127 -0
  27. package/DOCS/dev-tracks/README.md +10 -0
  28. package/README.md +26 -13
  29. package/cpp/CMakeLists.txt +236 -0
  30. package/cpp/bindings/embind.cpp +269 -0
  31. package/cpp/build.sh +129 -0
  32. package/cpp/geometry/Crystal.cpp +103 -0
  33. package/cpp/geometry/Fractal.cpp +136 -0
  34. package/cpp/geometry/GeometryGenerator.cpp +262 -0
  35. package/cpp/geometry/KleinBottle.cpp +71 -0
  36. package/cpp/geometry/Sphere.cpp +134 -0
  37. package/cpp/geometry/Tesseract.cpp +94 -0
  38. package/cpp/geometry/Tetrahedron.cpp +83 -0
  39. package/cpp/geometry/Torus.cpp +65 -0
  40. package/cpp/geometry/WarpFunctions.cpp +238 -0
  41. package/cpp/geometry/Wave.cpp +85 -0
  42. package/cpp/include/vib3_ffi.h +238 -0
  43. package/cpp/math/Mat4x4.cpp +409 -0
  44. package/cpp/math/Mat4x4.hpp +209 -0
  45. package/cpp/math/Projection.cpp +142 -0
  46. package/cpp/math/Projection.hpp +148 -0
  47. package/cpp/math/Rotor4D.cpp +322 -0
  48. package/cpp/math/Rotor4D.hpp +204 -0
  49. package/cpp/math/Vec4.cpp +303 -0
  50. package/cpp/math/Vec4.hpp +225 -0
  51. package/cpp/src/vib3_ffi.cpp +607 -0
  52. package/cpp/tests/Geometry_test.cpp +213 -0
  53. package/cpp/tests/Mat4x4_test.cpp +494 -0
  54. package/cpp/tests/Projection_test.cpp +298 -0
  55. package/cpp/tests/Rotor4D_test.cpp +423 -0
  56. package/cpp/tests/Vec4_test.cpp +489 -0
  57. package/package.json +31 -27
  58. package/src/agent/mcp/MCPServer.js +722 -0
  59. package/src/agent/mcp/stdio-server.js +264 -0
  60. package/src/agent/mcp/tools.js +367 -0
  61. package/src/cli/index.js +0 -0
  62. package/src/core/CanvasManager.js +97 -204
  63. package/src/core/ErrorReporter.js +1 -1
  64. package/src/core/Parameters.js +1 -1
  65. package/src/core/VIB3Engine.js +38 -1
  66. package/src/core/VitalitySystem.js +53 -0
  67. package/src/core/renderers/HolographicRendererAdapter.js +2 -2
  68. package/src/creative/AestheticMapper.js +628 -0
  69. package/src/creative/ChoreographyPlayer.js +481 -0
  70. package/src/export/TradingCardManager.js +3 -4
  71. package/src/faceted/FacetedSystem.js +237 -388
  72. package/src/holograms/HolographicVisualizer.js +29 -12
  73. package/src/holograms/RealHolographicSystem.js +68 -12
  74. package/src/polychora/PolychoraSystem.js +77 -0
  75. package/src/quantum/QuantumEngine.js +103 -66
  76. package/src/quantum/QuantumVisualizer.js +7 -2
  77. package/src/render/UnifiedRenderBridge.js +3 -0
  78. package/src/shaders/faceted/faceted.frag.glsl +220 -80
  79. package/src/shaders/faceted/faceted.frag.wgsl +138 -97
  80. package/src/shaders/holographic/holographic.frag.glsl +28 -9
  81. package/src/shaders/holographic/holographic.frag.wgsl +107 -38
  82. package/src/shaders/quantum/quantum.frag.glsl +1 -0
  83. package/src/shaders/quantum/quantum.frag.wgsl +1 -1
  84. package/src/viewer/index.js +1 -1
  85. package/tools/headless-renderer.js +258 -0
  86. package/tools/shader-sync-verify.js +8 -4
  87. package/tools/site-analysis/all-reports.json +32 -0
  88. package/tools/site-analysis/combined-analysis.md +50 -0
  89. package/tools/site-analyzer.mjs +779 -0
  90. package/tools/visual-catalog/capture.js +276 -0
  91. package/tools/visual-catalog/composite.js +138 -0
  92. /package/DOCS/{DEV_TRACK_PLAN_2026-01-07.md → archive/DEV_TRACK_PLAN_2026-01-07.md} +0 -0
  93. /package/DOCS/{SESSION_014_PLAN.md → archive/SESSION_014_PLAN.md} +0 -0
  94. /package/DOCS/{SESSION_LOG_2026-01-07.md → archive/SESSION_LOG_2026-01-07.md} +0 -0
  95. /package/DOCS/{STRATEGIC_BLUEPRINT_2026-01-07.md → archive/STRATEGIC_BLUEPRINT_2026-01-07.md} +0 -0
  96. /package/src/viewer/{ReactivityManager.js → ViewerInputHandler.js} +0 -0
@@ -0,0 +1,100 @@
1
+ # VIB3+ Landing Page Refactor Plan
2
+
3
+ **Date:** 2026-02-13
4
+ **Status:** Phase 1 Complete (CSS extraction + redirect)
5
+
6
+ ---
7
+
8
+ ## Problem Statement
9
+
10
+ The root `index.html` served by GitHub Pages was a bare SDK controls demo (sliders + canvas), not a landing page. The actual landing page at `site/index.html` existed but was:
11
+ - **1,978 lines monolithic** — 1,318 lines of inline `<style>` + 660 lines of HTML
12
+ - Not the default page visitors see
13
+ - Hero section only mentioned "Three Systems / 24 Geometries / 6D Rotation" — ignored the C++ WASM core, WebGPU backend, TypeScript definitions, MCP server
14
+
15
+ ---
16
+
17
+ ## What Was Done (Phase 1)
18
+
19
+ ### 1. CSS Extraction: `site/index.html` (1978 → 659 lines)
20
+
21
+ **Before:**
22
+ ```
23
+ site/index.html 1978 lines (1318 CSS + 660 HTML)
24
+ site/styles/overlay-accents.css 243 lines
25
+ site/styles/reveal-layers.css 401 lines
26
+ ```
27
+
28
+ **After:**
29
+ ```
30
+ site/index.html 659 lines (pure HTML + semantic structure)
31
+ site/styles/main.css 1318 lines (extracted from inline <style>)
32
+ site/styles/overlay-accents.css 243 lines (unchanged)
33
+ site/styles/reveal-layers.css 401 lines (unchanged)
34
+ ```
35
+
36
+ All 1,318 lines of inline CSS moved to `site/styles/main.css`. The HTML now links:
37
+ ```html
38
+ <link rel="stylesheet" href="./styles/main.css">
39
+ <link rel="stylesheet" href="./styles/overlay-accents.css">
40
+ <link rel="stylesheet" href="./styles/reveal-layers.css">
41
+ ```
42
+
43
+ ### 2. Root Redirect
44
+
45
+ **Before:** Root `index.html` was the raw SDK controls demo.
46
+ **After:** Root `index.html` is a meta-refresh redirect to `site/index.html`.
47
+
48
+ The raw demo moved to `demo/index.html` (import paths adjusted from `./src/` to `../src/`).
49
+
50
+ ### 3. Content Updates
51
+
52
+ | Location | Before | After |
53
+ |----------|--------|-------|
54
+ | Hero badge | `v2.0.1 — Three Systems · 24 Geometries · 6D Rotation` | `v2.0.3 — C++ WASM Core · WebGPU + WebGL · TypeScript` |
55
+ | Hero subtitle | "The fourth dimension, rendered..." | "4D visualization SDK with a C++ Clifford algebra core compiled to WASM..." |
56
+ | Hero system label | `Quantum Lattice Engine` | `C++ WASM · WebGPU · WebGL · MCP Agentic Control` |
57
+ | Opening subtitle | `4D Visualization Engine` | `C++ WASM · WebGPU · WebGL · TypeScript · MCP` |
58
+ | Triptych heading | `Three Systems. One Heartbeat.` | `Three Systems. One C++ Core.` |
59
+ | Triptych stats | 24 Geometries / 6D Rotation / 3 Systems | C++ WASM Core / 24 Geometries / 6D Rotation / 19 MCP Tools |
60
+ | CTA description | "WebGPU primary, WebGL fallback, C++ WASM math core" | Full architecture mention (Cl(4,0), dual backend, TS, MCP, framework integrations) |
61
+ | CTA install | `npm install` | `pnpm add` |
62
+ | Agent section | "Drop VIB3+ into any AI agent workflow" | "19-tool MCP server with JSON-RPC 2.0..." |
63
+
64
+ ---
65
+
66
+ ## File Structure After Refactor
67
+
68
+ ```
69
+ / Root
70
+ ├── index.html Redirect → site/index.html
71
+ ├── demo/
72
+ │ └── index.html SDK controls demo (moved from root)
73
+ ├── site/
74
+ │ ├── index.html Landing page (659 lines, HTML only)
75
+ │ ├── styles/
76
+ │ │ ├── main.css Core landing page styles (1318 lines)
77
+ │ │ ├── overlay-accents.css Overlay accent effects (243 lines)
78
+ │ │ └── reveal-layers.css Reveal layer choreography (401 lines)
79
+ │ └── js/
80
+ │ ├── main.js Boot script + GPU pool orchestrator (466 lines)
81
+ │ ├── config.js Section parameter presets (107 lines)
82
+ │ ├── adapters.js SDK system adapters (Quantum/Holographic/Faceted + AmbientLattice) (582 lines)
83
+ │ ├── choreography.js GSAP scroll choreography (~1000+ lines)
84
+ │ ├── ContextPool.js WebGL context budget manager
85
+ │ ├── CardTiltSystem.js Mouse/touch → CSS 3D tilt + visualizer param mapping
86
+ │ ├── overlay-choreography.js Overlay layer scroll choreography
87
+ │ └── reveal-choreography.js Reveal layer scroll choreography
88
+ ├── docs/ Gallery + exports + test hub
89
+ └── src/ SDK source (unchanged)
90
+ ```
91
+
92
+ ---
93
+
94
+ ## Phase 2 (Future)
95
+
96
+ Potential further cleanup:
97
+ - Extract remaining inline styles from `site/styles/main.css` into semantic sub-files (e.g., `hero.css`, `morph.css`, `playground.css`, `cascade.css`, etc.)
98
+ - Consider a build step (even simple CSS concat) to reduce HTTP requests
99
+ - Add proper `<nav>` component with links to Demo, Gallery, GitHub, npm
100
+ - Add architecture diagram section showing the full stack (C++ → WASM → JS/TS → WebGPU/WebGL → Canvas)
package/DOCS/STATUS.md ADDED
@@ -0,0 +1,24 @@
1
+ # VIB3+ SDK Status
2
+
3
+ This file is the single source of truth for high-level release status.
4
+
5
+ ## Release metadata
6
+
7
+ | Field | Status |
8
+ |---|---|
9
+ | Current package version | `2.0.3` (from `package.json`) |
10
+ | Release date | Unreleased in repository changelog (pending release entry for `2.0.3`) |
11
+ | Supported platforms | Web browsers, Node.js CLI/MCP workflows, WASM runtime, Flutter integration, and framework wrappers (React/Vue/Svelte) |
12
+
13
+ ## Test status
14
+
15
+ Test status is CI-linked (not hardcoded):
16
+
17
+ - Follow the baseline test/CI workflow in [`DOCS/CI_TESTING.md`](./CI_TESTING.md).
18
+ - Check your repository CI provider (GitHub Actions or equivalent pipeline) for live pass/fail state.
19
+
20
+ ## Update policy
21
+
22
+ - Update this file whenever `package.json` version changes.
23
+ - Keep test status summary link-based (CI), not hardcoded with static pass-count numbers.
24
+ - If the version is unreleased, explicitly mark it as unreleased until changelog/release publication is completed.
@@ -1,9 +1,11 @@
1
1
  # VIB3+ SDK System Inventory
2
2
 
3
- **Document Version:** 2.0.0
4
- **Last Updated:** 2026-01-30
3
+ **Document Version:** See `DOCS/STATUS.md`
4
+ **Last Updated:** See `DOCS/STATUS.md`
5
5
  **Purpose:** Complete technical inventory for developers and AI agents
6
6
 
7
+ > For canonical release metadata (version/date/platforms/test status), use [`DOCS/STATUS.md`](./STATUS.md) as the single source of release status.
8
+
7
9
  ---
8
10
 
9
11
  ## Executive Summary
@@ -22,7 +24,7 @@ The SDK provides 3 active visualization systems with shared 6D rotation mathemat
22
24
 
23
25
  | Metric | Value |
24
26
  |--------|-------|
25
- | **SDK Version** | 2.0.0 |
27
+ | **SDK Version** | See `DOCS/STATUS.md` |
26
28
  | **Visualization Systems** | 3 active (Quantum, Faceted, Holographic) + 1 archived (Polychora - TBD) |
27
29
  | **Rotation Planes** | 6 (XY, XZ, YZ for 3D; XW, YW, ZW for 4D) |
28
30
  | **Base Geometries** | 8 per system |
@@ -35,7 +37,7 @@ The SDK provides 3 active visualization systems with shared 6D rotation mathemat
35
37
  | **Creative Effects** | 14 post-processing effects, 22 color presets, 14 easing functions |
36
38
  | **Platform Integrations** | 7 (React, Vue, Svelte, Figma, Three.js, TouchDesigner, OBS) |
37
39
  | **Advanced Modules** | 5 (WebXR, WebGPU Compute, MIDI, AI Presets, OffscreenWorker) |
38
- | **Test Coverage** | 694+ tests passing |
40
+ | **Test Coverage** | CI-tracked status (see `DOCS/STATUS.md`) |
39
41
 
40
42
  ---
41
43
 
@@ -123,17 +125,17 @@ The SDK provides 3 active visualization systems with shared 6D rotation mathemat
123
125
  |----------|-------|
124
126
  | Canvas IDs | `background-canvas`, `shadow-canvas`, `content-canvas`, `highlight-canvas`, `accent-canvas` |
125
127
  | Geometries | 24 (8 base × 3 cores) |
126
- | Audio Reactive | Yes (bass/mid/high uniforms — wired in v2.0.0) |
127
- | Color Control | Full HSL (hue + saturation via `hsl2rgb()` — wired in v2.0.0) |
128
+ | Audio Reactive | Yes (bass/mid/high uniforms — wired in current release series |
129
+ | Color Control | Full HSL (hue + saturation via `hsl2rgb()` — wired in current release series |
128
130
  | Physics | No |
129
131
 
130
132
  **Core Features:**
131
133
  - Single WebGL context on `content-canvas`
132
134
  - Geometry functions in fragment shader
133
135
  - Core warp applied via `applyCoreWarp()` shader function
134
- - Full `hsl2rgb()` color pipeline with saturation control (v2.0.0)
135
- - Audio-reactive density/morph/hue shift (v2.0.0)
136
- - Click intensity boost (v2.0.0)
136
+ - Full `hsl2rgb()` color pipeline with saturation control (current release series)
137
+ - Audio-reactive density/morph/hue shift (current release series)
138
+ - Click intensity boost (current release series)
137
139
 
138
140
  ### 3. Holographic System
139
141
  **File:** `src/holograms/RealHolographicSystem.js` (652 LOC)
@@ -341,10 +343,10 @@ class ResourceManagerContract {
341
343
  │ ├── agent/ # MCP/CLI/Telemetry
342
344
  │ ├── export/ # Export generators
343
345
  │ ├── wasm/ # WASM loader
344
- │ ├── reactivity/ # Reactivity + SpatialInputSystem (v2.0.0)
345
- │ ├── creative/ # Creative tooling (v2.0.0)
346
- │ ├── integrations/ # Platform integrations (v2.0.0)
347
- │ └── advanced/ # Advanced features (v2.0.0)
346
+ │ ├── reactivity/ # Reactivity + SpatialInputSystem (current release series)
347
+ │ ├── creative/ # Creative tooling (current release series)
348
+ │ ├── integrations/ # Platform integrations (current release series)
349
+ │ └── advanced/ # Advanced features (current release series)
348
350
  ├── tools/ # Tooling (+ shader-sync-verify.js)
349
351
  ├── cpp/ # C++ math core (1,783 LOC)
350
352
  ├── js/ # Client-side integration
@@ -394,14 +396,14 @@ Expected: `change_geometry`
394
396
 
395
397
  ## Current Development Status
396
398
 
397
- ### Phase Status (as of v2.0.0, 2026-01-30)
399
+ ### Phase Status (historical baseline; current release status lives in `DOCS/STATUS.md`)
398
400
  | Phase | Status | Notes |
399
401
  |-------|--------|-------|
400
402
  | Phase 1: Foundation | ✅ Complete | Math, geometry, parameters |
401
403
  | Phase 2: Rendering | ✅ Mostly Complete | Contracts exist, adapters implemented |
402
404
  | Phase 3: Agentic | ✅ Complete | MCP, CLI, Telemetry working |
403
405
  | Phase 4: WebGPU | 🔄 In Progress | Scaffold exists, needs shader pipeline |
404
- | Phase 5: Hardening | ✅ Complete | 694 tests passing, XSS prevention, input validation |
406
+ | Phase 5: Hardening | ✅ Complete | Security/input hardening completed; see `DOCS/STATUS.md` + CI for current test state |
405
407
  | **Phase A: Parity & Polish** | **✅ Complete** | Quantum color, Faceted saturation/audio, clickIntensity fix, shader sync tool |
406
408
  | **Phase B: Creative Tooling** | **✅ Complete** | Color presets, transitions, post-processing, timeline |
407
409
  | **Phase C: Platform Integrations** | **✅ Complete** | React, Vue, Svelte, Figma, Three.js, TouchDesigner, OBS |
@@ -417,7 +419,7 @@ Expected: `change_geometry`
417
419
  ### Remaining Gaps
418
420
  1. WebGPU backend needs full shader pipeline
419
421
  2. Some systems don't fully implement RendererContract
420
- 3. New v2.0.0 modules need test coverage
422
+ 3. New current release-series modules need test coverage
421
423
 
422
424
  ---
423
425
 
@@ -429,18 +431,18 @@ Expected: `change_geometry`
429
431
  | WASM | ✅ Working | cpp/ → Emscripten → vib3.wasm |
430
432
  | Flutter | 🔄 Scaffold | src/platforms/flutter/ |
431
433
  | Node.js CLI | ✅ Working | src/agent/cli/ |
432
- | React | ✅ Component (v2.0.0) | src/integrations/frameworks/Vib3React.js |
433
- | Vue 3 | ✅ Component (v2.0.0) | src/integrations/frameworks/Vib3Vue.js |
434
- | Svelte | ✅ Component (v2.0.0) | src/integrations/frameworks/Vib3Svelte.js |
435
- | Three.js | ✅ ShaderMaterial (v2.0.0) | src/integrations/ThreeJsPackage.js |
436
- | Figma | ✅ Plugin (v2.0.0) | src/integrations/FigmaPlugin.js |
437
- | TouchDesigner | ✅ GLSL Export (v2.0.0) | src/integrations/TouchDesignerExport.js |
438
- | OBS Studio | ✅ Browser Source (v2.0.0) | src/integrations/OBSMode.js |
439
- | WebXR (VR/AR) | ✅ Renderer (v2.0.0) | src/advanced/WebXRRenderer.js |
434
+ | React | ✅ Component (current release series) | src/integrations/frameworks/Vib3React.js |
435
+ | Vue 3 | ✅ Component (current release series) | src/integrations/frameworks/Vib3Vue.js |
436
+ | Svelte | ✅ Component (current release series) | src/integrations/frameworks/Vib3Svelte.js |
437
+ | Three.js | ✅ ShaderMaterial (current release series) | src/integrations/ThreeJsPackage.js |
438
+ | Figma | ✅ Plugin (current release series) | src/integrations/FigmaPlugin.js |
439
+ | TouchDesigner | ✅ GLSL Export (current release series) | src/integrations/TouchDesignerExport.js |
440
+ | OBS Studio | ✅ Browser Source (current release series) | src/integrations/OBSMode.js |
441
+ | WebXR (VR/AR) | ✅ Renderer (current release series) | src/advanced/WebXRRenderer.js |
440
442
 
441
443
  ---
442
444
 
443
- ## v2.0.0 New Systems
445
+ ## New Systems (current release series)
444
446
 
445
447
  ### SpatialInputSystem (`src/reactivity/SpatialInputSystem.js` — 1,783 lines)
446
448
  Universal spatial input that decouples "card tilting" from physical device orientation. Any input source maps through a normalized spatial state (pitch/yaw/roll/x/y/z/intensity/velocity) to any visualization parameter.
@@ -487,10 +489,10 @@ Verifies inline shaders match external shader files. Parses GLSL uniforms and WG
487
489
  ## Next Steps for Development
488
490
 
489
491
  ### Immediate Priorities
490
- 1. Add test coverage for v2.0.0 modules (creative, integrations, advanced, SpatialInput)
492
+ 1. Add test coverage for current release-series modules (creative, integrations, advanced, SpatialInput)
491
493
  2. Complete WebGPU shader pipeline
492
494
  3. Production-harden platform integration wrappers
493
- 4. Publish @vib3code/sdk v2.0.0 to NPM
495
+ 4. Publish current package version (see `DOCS/STATUS.md`) to NPM
494
496
 
495
497
  ### Consolidation Tasks
496
498
  - [ ] Audit RendererContract compliance for all 3 active systems
@@ -505,16 +507,17 @@ Verifies inline shaders match external shader files. Parses GLSL uniforms and WG
505
507
 
506
508
  | Document | Purpose |
507
509
  |----------|---------|
508
- | `CLAUDE.md` | Development instructions (v2.0.0 updated) |
510
+ | `CLAUDE.md` | Development instructions |
509
511
  | `DEV_TRACK.md` | Session-by-session progress |
510
512
  | `DOCS/CLI_ONBOARDING.md` | Agent CLI setup |
511
513
  | `DOCS/CONTROL_REFERENCE.md` | UI control parameters |
512
514
  | `DOCS/RENDERER_LIFECYCLE.md` | Renderer architecture |
513
515
  | `DOCS/GPU_DISPOSAL_GUIDE.md` | Memory management |
514
- | `DOCS/SYSTEM_AUDIT_2026-01-30.md` | Full system audit (v2.0.0 updated) |
516
+ | `DOCS/SYSTEM_AUDIT_2026-01-30.md` | Full system audit |
517
+ | `DOCS/archive/SYSTEM_AUDIT_2026-01-30.md` | Full system audit (v2.0.0 updated, archived) |
515
518
  | `24-GEOMETRY-6D-ROTATION-SUMMARY.md` | Geometry encoding |
516
519
 
517
520
  ---
518
521
 
519
522
  *This document is the canonical system inventory. Update after significant changes.*
520
- *Last major update: v2.0.0 — 2026-01-30*
523
+ *Last major inventory update: 2026-01-30. For current release metadata, see `DOCS/STATUS.md`.*
@@ -0,0 +1,85 @@
1
+ # Visual Analysis: clickerss.com
2
+
3
+ **Captured: 2026-02-10 via Playwright with wheel-based scrolling**
4
+ **Method**: Real Chromium screenshots at 5 scroll positions (wheel events)
5
+ **Page height**: 9,950px (~11x viewport)
6
+
7
+ ---
8
+
9
+ ## Scroll Journey (Frame by Frame)
10
+
11
+ ### s00 — Top (scrollY=0)
12
+ **Dramatic B&W hero photograph**
13
+ - Background: pure white
14
+ - Massive B&W photograph: woman's face looking upward, cropped tight
15
+ - Image fills ~90% of viewport width, extends below fold
16
+ - "CLICKERSS" wordmark top-left in thin spaced uppercase
17
+ - Grid/dot icon center-top (hamburger/menu)
18
+ - Shopping bag icon top-right with "0"
19
+ - No other text or elements visible — the photograph IS the hero
20
+ - **Pattern**: Photography-as-hero. No text tagline, no CTA button, no gradient. Just a massive, emotional B&W portrait. The image does all the talking.
21
+
22
+ ### s01 — scrollY=2400
23
+ **Massive serif typography with text-image overlap**
24
+ - Left side: HUGE serif italic text — "CADA CAMPAÑA TIENE UN PROPOSITO." (~150px+ font)
25
+ - Text fills entire left half of viewport
26
+ - Right side at midpoint: device mockups (laptop + phone) showing portfolio work
27
+ - Below-right: MORE massive serif text — "ELEVAR MARCAS QUE DESEAN MARCAR LA DIFERENCIA"
28
+ - Bottom-left: portfolio image (fashion/beauty brand "MAISON LINA")
29
+ - The text and images OVERLAP — text runs behind/through images, images overlap text
30
+ - **Pattern**: Text-image interweaving. The massive serif text and the portfolio images occupy the SAME space, overlapping. Neither takes precedence — they share the viewport, creating a collage-like effect. This is the "text as visual element" pattern taken to an extreme.
31
+
32
+ ### s02 — scrollY=4800
33
+ **Product photography + service description**
34
+ - Top-left: iPhone product photos (phone shown from behind, showing camera modules)
35
+ - Images are placed asymmetrically, partially overlapping
36
+ - Right side: "VIDEOS CORPORATIVOS" heading in serif
37
+ - Below: "CONTAMOS TU HISTORIA DE MANERA UNICA" subheading
38
+ - Body text paragraph below
39
+ - Lower-left: portrait photo of man with flowing hair, cropped as rectangle
40
+ - Clean white background throughout
41
+ - **Pattern**: Asymmetric service showcase. Product photos LEFT, description text RIGHT. Portrait photo breaks the pattern by appearing lower-left. The layout is deliberately irregular.
42
+
43
+ ### s03 — scrollY=7200
44
+ **Mixed content section**
45
+ - Various portfolio/service content
46
+ - Continuing the white background
47
+ - Images and text positioned asymmetrically
48
+ - No dark/light mode switch — entire site stays on white
49
+
50
+ ### s04 — scrollY=9050 (bottom)
51
+ **CTA footer with massive typography**
52
+ - ENORMOUS serif text: "TU PRESENCIA DIGITAL ESTA A PUNTO DE DESPEGAR" (fills ~60% of viewport height)
53
+ - Arrow → + call-to-action body text below
54
+ - Footer nav: HOME, SERVICIOS, PORTFOLIO, SOBRE MI, CONTACTO, COMPRAR (all spaced across full width)
55
+ - Thin horizontal rule
56
+ - Bottom bar: legal links + copyright
57
+ - **Pattern**: Typography-as-CTA. Instead of a small "Contact us" button, the entire viewport is filled with massive serif text that IS the CTA. The typography scale makes the message impossible to ignore.
58
+
59
+ ---
60
+
61
+ ## Key Design Patterns for VIB3+ Translation
62
+
63
+ ### 1. Photography-as-Hero (No Competing Elements)
64
+ The hero has ONE thing: a massive photograph. No text overlay, no buttons, no gradients. The image fills the space and the viewer must engage with it.
65
+ **For VIB3+**: The opening cinematic with VIB3CODE text mask should have the visualizer as the ONLY visual element — no competing UI, no description text. Let the GPU canvas be the hero image equivalent.
66
+
67
+ ### 2. Text-Image Interweaving
68
+ Typography and images share the same spatial region, overlapping deliberately. Text runs behind images; images overlap text boundaries. Neither element "wins" — they coexist.
69
+ **For VIB3+**: Cascade card overlays could have text that extends BEYOND the card boundaries, overlapping into adjacent cards. The `.cascade-overlay` text could be positioned to extend past the clip-path edge.
70
+
71
+ ### 3. Massive Serif Typography as Primary Visual Element
72
+ Text isn't just information — it's the dominant visual pattern. Lines of text at 100-200px size create visual rhythm and weight comparable to images.
73
+ **For VIB3+**: Section titles could be dramatically larger — not just `3rem` headings but `clamp(4rem, 12vw, 10rem)` viewport-filling text.
74
+
75
+ ### 4. Consistent White Background (No Mode Switching)
76
+ Unlike Simone's dark/light mode transitions, clickerss stays on white throughout. All visual variety comes from photography and typography scale.
77
+ **For VIB3+**: This validates that NOT every section needs a color mode switch. Some sections can maintain a consistent background and let the visualizer parameters alone create the visual change.
78
+
79
+ ### 5. CTA as Giant Typography
80
+ The footer CTA fills the viewport with a single sentence. The scale of the text makes it feel like a billboard or poster.
81
+ **For VIB3+**: The CTA section could use massive outlined text (similar to Simone's footer "SIMONE" strokes) rather than a traditional button layout.
82
+
83
+ ---
84
+
85
+ *Analysis based on actual Playwright screenshots captured with wheel-event scrolling.*
@@ -0,0 +1,133 @@
1
+ # Visual Analysis: facetad.com
2
+
3
+ **Captured: 2026-02-10 via Playwright with wheel-based scrolling**
4
+ **Method**: Real Chromium screenshots at 10 scroll positions (wheel events)
5
+ **Page height**: 15,082px (~16.8x viewport)
6
+
7
+ ---
8
+
9
+ ## Scroll Journey (Frame by Frame)
10
+
11
+ ### s00 — Top (scrollY=0)
12
+ **Ultra-minimal hero: single line of text on vast cream emptiness**
13
+ - Background: warm cream/off-white (#F5F0EB range)
14
+ - Centered text: "We approach every facet of design with a sense of wonder."
15
+ - Text is small, light gray, serif — occupies maybe 5% of viewport
16
+ - Tiny chevron/scroll indicator below text
17
+ - No nav, no logo visible at top — just vast empty space above and below
18
+ - **Pattern**: Extreme negative space. The emptiness IS the design. Forces the eye to the single sentence.
19
+
20
+ ### s01 — scrollY=1680
21
+ **Parallelogram image explosion around centered logo**
22
+ - FACET logo + "ARCHITECTURAL DESIGN" centered
23
+ - Tagline below logo
24
+ - 6+ architectural photos SCATTERED around the logo in **parallelogram/skewed clip-paths**
25
+ - Images are different sizes, at different angles/positions
26
+ - Images overlap each other and the logo text
27
+ - Some images partially exit viewport edges
28
+ - **Pattern**: Scattered parallelogram gallery. Images use CSS `transform: skew()` or `clip-path: polygon()` to create non-rectangular shapes. Creates a chaotic but visually rich collage effect.
29
+
30
+ ### s02 — scrollY=3360
31
+ **Full parallelogram gallery — maximum density**
32
+ - ~20+ architectural photos visible, ALL in parallelogram shapes
33
+ - Images scattered across entire viewport at various sizes (small thumbnails to medium)
34
+ - FACET logo still centered but partially obscured by overlapping images
35
+ - Some images overlap each other creating depth layers
36
+ - Images appear to float at different z-levels
37
+ - **Pattern**: This is the peak of the scatter effect. The sheer density + non-rectangular shapes + overlap creates an effect like looking through a shattered window at many projects simultaneously. Very strong depth illusion.
38
+
39
+ ### s03 — scrollY=5040
40
+ **Large diagonal project images**
41
+ - Two massive project photos with strong diagonal clip-path edges
42
+ - Top: building at dusk with warm-lit windows, cut diagonally
43
+ - Bottom-right: bright blue architectural image, also cut diagonally
44
+ - A red/orange geometric element visible at top-right (matching brand color)
45
+ - Images take up most of viewport, overlapping
46
+ - **Pattern**: From scattered small thumbnails, the images have GROWN into massive hero-sized images. The diagonal edges create dramatic slash transitions between photos. This is the parallelogram theme at architectural scale.
47
+
48
+ ### s04 — scrollY=6720
49
+ **Single massive image with diagonal wipe to cream**
50
+ - Top-left: large project photo (modern building exterior with glass, lawn, outdoor seating)
51
+ - Diagonal edge cuts from top-left to bottom-right
52
+ - Below the diagonal: pure cream emptiness
53
+ - The diagonal creates a dramatic "wipe" transition from content to void
54
+ - **Pattern**: Diagonal section transition. Not horizontal, not curved — a sharp diagonal slash separates photo content from empty space. This is how facetad handles section boundaries.
55
+
56
+ ### s05 — scrollY=8400
57
+ **Markets section: overlapping photos + text**
58
+ - Top: "MARKETS WE SERVE" heading in red/terracotta
59
+ - Two large photos side by side showing hospitality interior (bar/restaurant)
60
+ - Photos overlap slightly, creating a diptych
61
+ - Right side: "HOSPITALITY" heading in red italic + body text paragraph
62
+ - Classic asymmetric layout: images LEFT, text RIGHT
63
+ - **Pattern**: Asymmetric portfolio section — large overlapping photos paired with small text. The overlap between the two photos adds depth.
64
+
65
+ ### s06 — scrollY=10080
66
+ **Services section: clean asymmetric layout**
67
+ - "OUR DESIGN SERVICES" heading top-left in small red text
68
+ - "ARCHITECTURE" heading in large red italic text, left side
69
+ - Body text paragraph below heading
70
+ - Large architectural rendering (aerial view of commercial building) floats right at ~55% width
71
+ - Image has subtle shadow/depth
72
+ - Clean, spacious layout with generous white space
73
+ - **Pattern**: Standard asymmetric card (text left, image right) but with extreme white space. The image is large and positioned to feel like it's floating above the page.
74
+
75
+ ### s07 — scrollY=11760
76
+ **Services continued + diagonal color transition beginning**
77
+ - "OUR DESIGN SERVICES" still visible at top
78
+ - "FF&E" heading in red italic with body text, left side
79
+ - No image — text only section
80
+ - Bottom of viewport: the red/terracotta color BEGINS appearing as a diagonal band
81
+ - The diagonal enters from bottom-right, cutting upward to the left
82
+ - **Pattern**: The diagonal section divider is introducing the red brand color. It's the same diagonal slash pattern but now used for a full COLOR MODE TRANSITION (cream → red).
83
+
84
+ ### s08 — scrollY=13440
85
+ **Full diagonal color split: red to cream**
86
+ - Top ~40%: solid red/terracotta (#C0392B range)
87
+ - Diagonal slash cuts from upper-left to lower-right
88
+ - Bottom ~60%: back to cream
89
+ - "START A CONVERSATION" in large red italic text on cream
90
+ - "Talk with one of our award-winning architects about your next project." body text
91
+ - "Schedule A Call" link in red
92
+ - **Pattern**: The CTA section uses the diagonal color split as a dramatic reveal. The red block slides away diagonally to reveal the CTA on cream. Creates a cinematic wipe effect.
93
+
94
+ ### s09 — scrollY=14182 (bottom)
95
+ **Footer: diagonal split cream/red**
96
+ - Top-left: cream background with FACET logo + address + contact info
97
+ - Diagonal divider cuts from upper-right to lower-left
98
+ - Bottom-right: solid red/terracotta background with nav links + social links + subscribe form
99
+ - "SUBSCRIBE" heading with email input and "SUBMIT" button
100
+ - "Website by Novel" credit at bottom-left
101
+ - **Pattern**: Footer echoes the diagonal theme. The entire footer is split diagonally — warm cream on one side, brand red on the other. The diagonal is the site's signature visual motif from hero through footer.
102
+
103
+ ---
104
+
105
+ ## Key Design Patterns for VIB3+ Translation
106
+
107
+ ### 1. Parallelogram/Skewed Image Gallery
108
+ Project images use non-rectangular clip-paths (parallelograms, rhomboids). Images are scattered at different sizes, positions, and overlap each other. This creates a shattered-glass collage effect with real depth.
109
+ **For VIB3+**: Cascade cards could use parallelogram clip-paths instead of rectangles. The clip-path morphing system already supports polygon interpolation — add skewed/angled shapes to the shape sequence.
110
+
111
+ ### 2. Diagonal Section Dividers
112
+ Every section boundary uses a diagonal slash — not horizontal lines, not curves. The same angle (~30-40 degrees) is used consistently.
113
+ **For VIB3+**: Section dividers could use angled clip-paths or CSS `polygon()` instead of horizontal borders. The diagonal creates much more visual energy than straight horizontal lines.
114
+
115
+ ### 3. Density Progression (Sparse → Dense → Sparse)
116
+ The page starts with extreme emptiness (one line of text), builds to maximum density (20+ scattered images), then relaxes back to spacious layouts before ending with another sparse CTA.
117
+ **For VIB3+**: The morph stages should follow this arc — start minimal, build to visual complexity peak, then settle.
118
+
119
+ ### 4. Diagonal Color Mode Transitions
120
+ The cream → red transition doesn't happen at a horizontal boundary. A diagonal band of red slashes across the viewport, creating a cinematic wipe effect.
121
+ **For VIB3+**: Dark/light mode switches could use diagonal clip-path animations instead of straight horizontal borders.
122
+
123
+ ### 5. Extreme Negative Space
124
+ The hero is 95% empty. Text occupies a tiny fraction of the viewport. This forces attention and creates anticipation.
125
+ **For VIB3+**: The opening cinematic should start sparse — let the visualizer breathe in vast empty space before the content builds up.
126
+
127
+ ### 6. Consistent Brand Angle
128
+ The diagonal angle is THE signature of the site. It appears in: image clip-paths, section dividers, color transitions, footer layout. The same ~30deg angle repeats everywhere.
129
+ **For VIB3+**: Pick a consistent geometric motif and repeat it across different contexts — clip-paths, dividers, card shapes, overlay patterns.
130
+
131
+ ---
132
+
133
+ *Analysis based on actual Playwright screenshots captured with wheel-event scrolling.*
@@ -0,0 +1,95 @@
1
+ # Visual Analysis: weare-simone.webflow.io
2
+
3
+ **Captured: 2026-02-10 via Playwright with wheel-based scrolling**
4
+ **Method**: Real Chromium screenshots at 8 scroll positions (wheel events trigger Lenis/GSAP)
5
+ **Page height**: 12,062px (~13.4x viewport)
6
+
7
+ ---
8
+
9
+ ## Scroll Journey (Frame by Frame)
10
+
11
+ ### s00 — Top (scrollY=0)
12
+ **Giant "SIMONE" wordmark fills ~80% of viewport width**
13
+ - Background: warm cream/off-white with subtle noise texture
14
+ - Typography: black, extremely bold condensed sans-serif, all caps
15
+ - Text takes up full viewport — no other content visible except:
16
+ - Small "SIMONE" logo top-left (dark teal, tiny)
17
+ - Green pill-shaped nav button top-right with dot indicators
18
+ - Minimal nav links: "Work", "About", "Contact"
19
+ - **Pattern**: Hero section is JUST typography. No images, no gradients. The text IS the design. Massive scale creates impact.
20
+
21
+ ### s01 — scrollY=2400
22
+ **Complete mode switch: cream → dark teal**
23
+ - Background: deep dark teal (#0A3239 range) with subtle noise texture
24
+ - Large white serif/display text: "What if we could alter reality *for the better?*"
25
+ - "for the better?" in lime/chartreuse green (#CCFF66)
26
+ - Below: smaller body text (cream colored) explaining studio mission
27
+ - Content sits within a large rounded-corner container (~24px radius)
28
+ - **Pattern**: DRAMATIC full-palette inversion at section boundary. The entire color scheme flips. This is the "dark/light mode threshold" pattern.
29
+
30
+ ### s02 — scrollY=4800
31
+ **Asymmetric case study card (IKEA)**
32
+ - Still dark teal background
33
+ - Large serif heading: "Transform how we browse"
34
+ - Small body text on left side
35
+ - IKEA logo (white on dark)
36
+ - Green pill button: "View case study" with arrow
37
+ - **Product image floats right**: desk lamp in dark tones, offset ~60% to the right
38
+ - Below: "Turn up the magic" heading beginning to enter viewport
39
+ - **Pattern**: Asymmetric card layout. Text content LEFT, floating product image RIGHT. The image is positioned outside the text column — creates overlap depth.
40
+
41
+ ### s03 — scrollY=7200
42
+ **Sephora + Nike stacked case studies**
43
+ - Top: Sephora section ending — "Draw people into your world..." text top-right
44
+ - Sephora logo centered, "View case study" green pill
45
+ - Red 3D cosmetic product floats LEFT (~25% from left edge)
46
+ - Bottom half: Nike "Get people moving" section beginning
47
+ - Nike logo at bottom
48
+ - **Pattern**: Alternating asymmetry — IKEA had image RIGHT, Sephora has image LEFT, Nike will have image RIGHT. This creates a zigzag visual rhythm as you scroll.
49
+
50
+ ### s04 — scrollY=9600
51
+ **Client logos strip on cream background**
52
+ - Mode switch BACK to light: cream/off-white background
53
+ - Three logos visible: Dior, Monzo, Disney
54
+ - Very clean, minimal spacing
55
+ - Logos are small and muted (dark teal on cream)
56
+ - **Pattern**: Palate cleanser section. After intense dark case studies, a minimal light section resets visual fatigue. Brief breathing room.
57
+
58
+ ### s05 — scrollY=11162 (bottom)
59
+ **CTA footer with marquee**
60
+ - Mode switch back to dark teal
61
+ - "Ready to alter reality?" centered heading (small, white)
62
+ - GIANT horizontal marquee: "Work with us" repeated, scrolling horizontally
63
+ - Green circular CTA button between the marquee text repetitions
64
+ - Below the marquee: "SIMONE" in massive OUTLINED/STROKE typography (no fill, just border)
65
+ - Footer bar: © 2026, Instagram, LinkedIn, "Site by Kin", 1% Planet badge
66
+ - **Pattern**: The footer echoes the hero — same giant "SIMONE" text but now as outlined strokes instead of filled. Creates bookend/closure. The horizontal marquee adds perpetual motion.
67
+
68
+ ---
69
+
70
+ ## Key Design Patterns for VIB3+ Translation
71
+
72
+ ### 1. Typography-As-Hero
73
+ The hero section has NOTHING except giant text. No background effects, no images. The text IS the visual impact. For VIB3+: the opening cinematic should let the visualizer fill the entire space without competing with too many UI elements.
74
+
75
+ ### 2. Hard Dark/Light Mode Switches
76
+ Sections don't cross-fade between modes — they SNAP. Cream → dark teal is a sharp boundary (though with Lenis smoothing it feels smooth). For VIB3+: system/parameter presets should change sharply at section boundaries, not gradually.
77
+
78
+ ### 3. Zigzag Asymmetric Cards
79
+ Case study cards alternate: image-right → image-left → image-right. This creates visual rhythm and prevents monotony. For VIB3+: cascade cards or triptych panels should have alternating asymmetry rather than centered symmetry.
80
+
81
+ ### 4. Floating Product Objects
82
+ Images are positioned OUTSIDE their text columns, overlapping into adjacent space. This creates real depth layers. For VIB3+: visualizer canvases could extend beyond their logical containers, bleeding into adjacent sections.
83
+
84
+ ### 5. Marquee CTA
85
+ "Work with us" scrolls infinitely horizontally. This adds persistent motion that's independent of scroll position. For VIB3+: a parameter-driven text ticker or rotating geometry showcase could serve the same purpose.
86
+
87
+ ### 6. Outlined Typography Echo
88
+ The hero's filled "SIMONE" becomes outlined/stroked at the footer. The same shape, different rendering. For VIB3+: the same geometry could be shown in different visualization systems at different scroll positions (Quantum fill → Faceted outline).
89
+
90
+ ### 7. Subtle Noise Texture
91
+ Both light and dark backgrounds have a visible noise/grain texture overlay. This adds tactile quality and prevents "flat digital" feeling. For VIB3+: a CSS grain overlay on sections would add this same warmth.
92
+
93
+ ---
94
+
95
+ *Analysis based on actual Playwright screenshots captured with wheel-event scrolling.*