tawasuyu

tawasuyu/llimphi

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

Rust 660Markdown 302TOML 157RON 312382 Definitions

⎇ main llimphi-wire-escena/Cargo.toml TOML · 33 lines · 1.7 KB History raw

chore: refresco desde el monorepo — vello 0.9 / wgpu 29, 120 miembros d251eb32b · Sergio ·

1[package]
2name = "llimphi-wire-escena"
3version.workspace = true
4edition.workspace = true
5license.workspace = true
6authors.workspace = true
7publish.workspace = true
8description = "llimphi-wire-escena — el IR de ESCENA que cruza la frontera WASM: una lista plana de formas + pinceles + texto SIN SHAPEAR, serializable con postcard. La app (jaula) corre layout y compone; el kernel rasteriza y shapea nativo. Es la variante que W4.1 midió como 3,3x mejor que mandar glifos. no_std + alloc. W4 de 03_ukupacha/wawa/PLAN-LLIMPHI.md."
9
10[dependencies]
11# serde sin std: el guest puede ser no_std (una app de wawa); el host trae el suyo.
12serde = { version = "1", default-features = false, features = ["derive", "alloc"] }
13
14# Geometría y estilo, PERO NO EL RASTERIZADOR. Ésa es la línea que define este
15# crate: `kurbo` + `peniko` son los vocabularios que el compositor ya habla, así
16# que la grabadora puede recibir sus tipos tal cual; `vello_cpu` y `parley` se
17# quedan del lado nativo, que es justo lo que W4.1 midió como la diferencia
18# entre 21,8 fps y 71.
19kurbo = { version = "0.13", default-features = false }
20peniko = { version = "0.6", default-features = false }
21
22[features]
23# Mismo trato que en `llimphi-cpu`, y por la misma razón (ver el comentario
24# largo en su Cargo.toml): el perfil de este crate tiene que coincidir con el de
25# kurbo en el mismo build. En el workspace vello fuerza `std`; en wawa no hay
26# vello que unifique nada y se pide `libm` explícito.
27default = ["std"]
28std = ["serde/std", "kurbo/std", "peniko/std"]
29libm = ["kurbo/libm", "peniko/libm"]
30
31[dev-dependencies]
32# El round-trip y la medición de bytes/fotograma se certifican del lado host.
33postcard = { workspace = true }