1# modules/gioser/ — Landing WASM (chacana + 4 elementos)
2
3**Propósito.** Sitio personal animado en WASM: chacana 3D con tilt
4físico al mouse + 4 tips cardinales (agua/fuego/aire/tierra). Demuestra
5el patrón "crates agnósticos + cdylib WASM" del monorepo.
6
7## Crates
8
9| crate | tipo | rol |
10| --------------------- | ------- | ------------------------------------------------ |
11| `gioser-geom` | lib | Geometría puramatemática (chacana, polígonos) |
12| `gioser-physics` | lib | Inercia + spring para tilt (puro) |
13| `gioser-palette` | lib | Paletas dark/light de los 4 elementos |
14| `gioser-shaders` | lib | Shaders WebGL2 (vertex + fragment) como strings |
15| `gioser-canvas-web` | lib | Renderer WebGL2: GL context + program + draw |
16
17## Dependencias
18
19- Los 4 primeros: sin deps web. Reutilizables en cualquier backend.
20- `gioser-canvas-web` ← `wasm-bindgen`, `web-sys` (WebGL2RenderingContext).
21- App final `apps/gioser-web` es cdylib.
22
23## Estado
24
25LOC 2,535. Landing operativa, deploys con `scripts/build-gioser-web.sh`.
26Tests en geom/physics/palette. Estable. Ver `docs/changelog/gioser.md`.
SDD.md
modules/gioser/ — Landing WASM (chacana + 4 elementos)
Propósito. Sitio personal animado en WASM: chacana 3D con tilt
físico al mouse + 4 tips cardinales (agua/fuego/aire/tierra). Demuestra
el patrón "crates agnósticos + cdylib WASM" del monorepo.
Crates
| crate | tipo | rol |
gioser-geom | lib | Geometría puramatemática (chacana, polígonos) |
gioser-physics | lib | Inercia + spring para tilt (puro) |
gioser-palette | lib | Paletas dark/light de los 4 elementos |
gioser-shaders | lib | Shaders WebGL2 (vertex + fragment) como strings |
gioser-canvas-web | lib | Renderer WebGL2: GL context + program + draw |
Dependencias
- Los 4 primeros: sin deps web. Reutilizables en cualquier backend.
gioser-canvas-web ← wasm-bindgen, web-sys (WebGL2RenderingContext).
- App final
apps/gioser-web es cdylib.
Estado
LOC 2,535. Landing operativa, deploys con scripts/build-gioser-web.sh.
Tests en geom/physics/palette. Estable. Ver docs/changelog/gioser.md.