gioser

tawasuyu/llimphi

Sovereign retained-mode GPU UI framework in Rust (wgpu+vello+taffy+parley), Elm loop, 40+ widgets.

Rust 614Markdown 274TOML 149RON 310606 Definitions

⎇ main modules/allichay/LEEME.md Markdown · 37 lines · 1.7 KB History raw

chore: refresco desde el monorepo — 27 crates nuevos (anim, lottie, svg, mesh, image, layer, test, wire-view, widgets rag-sidebar/router/lazy-list/rive-button) y sync de los 95 existentes 93253cc22 · Sergio ·

1# llimphi-module-allichay
2
3*Read this in English: [README.md](README.md).*
4
5El renderizador único de la configuración declarativa.
6
7Toma un `allichay::Schema` y lo pinta con el **sidebar unificado**
8(`llimphi-widget-rag-sidebar`): un diente por sección top-level y, en el panel
9del diente activo, controles escalares para los campos (toggle, slider,
10dropdown, color, texto). El rail, el panel, el header uniforme (título de la
11sección), el buscador y el control de disposición los pinta UN solo widget —
12allichay no re-deriva chrome. Los cambios salen como un `AllichayMsg` que el
13host mapea a su propio `Msg`.
14
15El cuerpo schema-driven (`section_view`/`schema_panel`) queda expuesto
16aparte para hosts que ya tienen su propio rail (p. ej. `wawa-panel`): esos
17reutilizan el renderizado de campos sin el sidebar interno.
18
19Es un módulo al estilo de `command-palette`: aporta `state + Msg + apply_key
20+ view`. El host:
21
221. guarda un `AllichayState` en su modelo;
232. llama `allichay_view` en su `view`, mapeando `AllichayMsg` → su `Msg`;
243. enruta las teclas a `AllichayState::apply_key` cuando hay un campo de
25   texto focado;
264. ante un `AllichayMsg::Change`, aplica el `(FieldPath, FieldValue)` a su
27   config (vía `allichay::Configurable::apply`) y la persiste con su propio
28   `save()` — allichay no toca el disco.
29
30Subsecciones: en v1 se pintan como grupos con encabezado dentro del panel de
31la sección activa (un solo nivel de dientes). El panel central combina las
32apps en un esquema donde cada app es una sección-diente y sus secciones
33reales bajan a subsecciones — así un mismo rail navega "apps → secciones".
34
35---
36
37Parte de **llimphi** — ver [llimphi](../../LEEME.md).

LEEME.md

llimphi-module-allichay

Read this in English: README.md.

El renderizador único de la configuración declarativa.

Toma un allichay::Schema y lo pinta con el sidebar unificado (llimphi-widget-rag-sidebar): un diente por sección top-level y, en el panel del diente activo, controles escalares para los campos (toggle, slider, dropdown, color, texto). El rail, el panel, el header uniforme (título de la sección), el buscador y el control de disposición los pinta UN solo widget — allichay no re-deriva chrome. Los cambios salen como un AllichayMsg que el host mapea a su propio Msg.

El cuerpo schema-driven (section_view/schema_panel) queda expuesto aparte para hosts que ya tienen su propio rail (p. ej. wawa-panel): esos reutilizan el renderizado de campos sin el sidebar interno.

Es un módulo al estilo de command-palette: aporta `state + Msg + apply_key

  1. guarda un AllichayState en su modelo;
  2. llama allichay_view en su view, mapeando AllichayMsg → su Msg;
  3. enruta las teclas a AllichayState::apply_key cuando hay un campo de texto focado;
  4. ante un AllichayMsg::Change, aplica el (FieldPath, FieldValue) a su config (vía allichay::Configurable::apply) y la persiste con su propio save() — allichay no toca el disco.

Subsecciones: en v1 se pintan como grupos con encabezado dentro del panel de la sección activa (un solo nivel de dientes). El panel central combina las apps en un esquema donde cada app es una sección-diente y sus secciones reales bajan a subsecciones — así un mismo rail navega "apps → secciones".


Parte de llimphi — ver llimphi.